Untitled
unknown
plain_text
2 years ago
1.6 kB
6
Indexable
#include <iostream>
#include <algorithm>
using namespace std;
// Функция для бинарного поиска
bool binarySearch(int arr[], int key, int low, int high) {
if (low > high) {
return false;
}
int mid = low + (high - low) / 2;
if (arr[mid] == key) {
return true;
}
else if (arr[mid] > key) {
return binarySearch(arr, key, low, mid - 1);
}
else {
return binarySearch(arr, key, mid + 1, high);
}
}
int main() {
int N;
cout << "Введите размер массива: ";
cin >> N;
int A[N];
cout << "Введите элементы массива: ";
for (int i = 0; i < N; i++) {
cin >> A[i];
}
cout << "Исходный массив: ";
for (int i = 0; i < N; i++) {
cout << A[i] << " ";
}
cout << endl;
// Упорядочивание массива по возрастанию
sort(A, A + N);
cout << "Отсортированный массив: ";
for (int i = 0; i < N; i++) {
cout << A[i] << " ";
}
cout << endl;
int M;
cout << "Введите число M для поиска: ";
cin >> M;
// Поиск числа M с использованием бинарного поиска
if (binarySearch(A, M, 0, N - 1)) {
cout << "Число M найдено в массиве." << endl;
}
else {
cout << "Число M не найдено в массиве." << endl;
}
return 0;
}Editor is loading...
Leave a Comment