• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

методы анализа алгоритмов

  • Автор темы mastermedia
  • Дата начала
M

mastermedia

Написать программу на языке программирования Java2, осуществляющей анализ алгоритмов согласно варианту.
Выполните анализ эффективности алгоритмов последовательного и бинарного поиска данных в одномерном упорядоченном массиве размерностью М, М2, М3 (массив инициируется генератором случайных значений).

Как я понимаю, это нужно сделать с помощью встроенного метода System.nanotime(), но не знаю как это правильно сделать. Выкладываю, то что смог написать. Помогите пожалуйста организовать это в моей программе.

<!--shcode--><pre><code class='java'>public static void main(String[] args) {
System.out.println("Введите М: ");
Scanner in = new Scanner(System.in);
int M = in.nextInt();


}


static int[] array1 (int M){
int[] a = new int[M];
Random r = new Random();
for (int i = 0; i < M; i++)
a = r.nextInt();
return a;
}

public static int linearSearch(int array1[], int first, int upto, int key) {

for (int i = first; i < upto; i++) {
if (key == array1) {
return i;
}
}
return -1;
}
static int binSearch(int array1[], int el) {
if (array1.length == 0) {
return 0;
}
if (array1[array1.length - 1] < el) {
return array1.length;
}
int i = 0;
int j = array1.length;
while (i + 1 < j) {
int middle = i + (j - i) / 2;
if (array1[middle] >= el) {
j = middle;
} else {
i = middle;
}
}
return array1 >= el ? i : j;
}
}[/CODE]
 

Kmet

Well-known member
25.05.2006
904
8
BIT
0
Код:
long startTime = System.nanoTime();	
// ... the code being measured ...	
long estimatedTime = System.nanoTime() - startTime;
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!