Академический Документы
Профессиональный Документы
Культура Документы
Учреждение образования
ОТЧЁТ ПО ЛР № 1
по дисциплине
«Технология проектирования программного обеспечения информационных
систем»
Минск 2022
Задание 1
1.Отсортировать массив каким-либо из известных вам методов.
2.Реализовать бинарный поиск элемента в отсортированном массиве
(обычный или рекурсивный)
Листинг программы:
package com.company;
import java.util.Arrays;
import java.util.Scanner;
// бинарный поиск
public static void binarySearch(int[] array, int first, int last, int
item) {
int position;
int comparisonCount = 1; // для подсчета количества сравнений
Задание 2
1. Создать две произвольных строки
2. Определить длину наидлиннейшей общей подпоследовательности
строк
import java.util.Scanner;
// создание матрицы
int[][] tableForLCS = new int[p + 1][q + 1];
// заполнение таблицы сверху вниз
for (int i = 0; i <= p; i++) {
for (int j = 0; j <= q; j++) {
if (i == 0 || j == 0)
tableForLCS[i][j] = 0; // заполнение ячееек соответствующих
первому столбцу и первой строке 0
else if (str1.charAt(i - 1) == str2.charAt(j - 1))
tableForLCS[i][j] = tableForLCS[i - 1][j - 1] + 1; //
добавление 1 в ячейку предыдущей строки и столбца
else
tableForLCS[i][j] = Math.max(tableForLCS[i - 1][j],
tableForLCS[i][j - 1]); //определение максимального значения из ячейки предыдущей
строки и текущего столбца и ячейки текущей строки и предыдущего столбца
}
}
int i = p, j = q;
String lcs = "";
while (i > 0 && j > 0) {
if (str1.charAt(i - 1) == str2.charAt(j - 1)) {
return lcs;
}
int p = str1.length();
int q = str2.length();
Листинг программы
package com.company;
import java.util.Scanner;
int p = string1.length();
int q = string2.length();