static int findElementIndexByValue(int[] arr, int value) {
for (int i = 0; i < arr.length; i++) {
if (arr[i] == value) {
return i;
}
}
return -1;
}
int[] arr = {5, -1, 4, 0, 1, 9, 8, 7};
int value = 322;
int index = findElementIndexByValue(arr, value);
if (index != -1) {
System.out.println("Индекс элемента " + value + " в массиве: " + index);
} else {
System.out.println("Элемента " + value + " в массиве не существует");
}
// => "Элемента 322 в массиве не существует"
// Сортировка вставками
static void insertionSort(int[] arr) {
for (int i = 1; i < arr.length; i++) {
for (int k = i; k > 0; k--) {
if (arr[k] < arr[k - 1]) {
// меняем элементы местами
arr[k] += arr[k - 1];
arr[k - 1] = arr[k] - arr[k - 1];
arr[k] = arr[k] - arr[k - 1];
}
}
}
}
int[] arr = {5, -1, 4, 0, 1, 9, 8, 7};
insertionSort(arr);
System.out.println(Arrays.toString(arr)); // => [-1, 0, 1, 4, 5, 7, 8, 9]
static int binarySearch(int[] arr, int value) {
int left = 0;
int right = arr.length - 1;
while (left <= right) {
int middle = (left + right) / 2;
if (arr[middle] < value) {
left = middle + 1;
} else if (arr[middle] > value) {
right = middle - 1;
} else {
return middle;
}
}
return -1;
}
int[] arr = {5, -1, 4, 0, 1, 9, 8, 7};
// Бинарный поиск работает для отсортированного массива
// Сортируем массив
insertionSort(arr);
System.out.println(Arrays.toString(arr)); // => // => [-1, 0, 1, 4, 5, 7, 8, 9]
int value = 1;
int binarySearchedIndex = binarySearch(arr, value);
if (binarySearchedIndex != -1) {
System.out.println("Бинарный поиск: элемент " + value + " находится на позиции " + binarySearchedIndex);
} else {
System.out.println("Элемент " + value + " не найден в массиве");
}
// => "Бинарный поиск: элемент 1 находится на позиции 2"
Вам ответят команда поддержки Хекслета или другие студенты.
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.
Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно.
Наши выпускники работают в компаниях:
Зарегистрируйтесь или войдите в свой аккаунт