Simple Complete Binary Search C++ Simple Program Algorithm Material

Опитайте Нашия Инструмент За Премахване На Проблемите

Програмата за двоично търсене на език C++ е алгоритъм за търсене чрез разделяне на данните на две части всеки път, когато възникне процес на търсене, за да се намери определена стойност в линеен масив. Процесът на двоично търсене c++ може да се извърши само върху набори от данни, които са сортирани първи.
Двоичното търсене търси средната стойност (медиана), извършва сравнение, за да определи дали търсената стойност е преди или след нея, след което търси останалата половина по същия начин. Двоичното търсене се извършва за:
а) Минимизирайте броя на операциите за сравнение, които трябва да бъдат извършени между данните, които се търсят, и данните в таблицата, особено за много големи количества данни.
б) Изчислителното натоварване е по-малко, тъй като търсенето се извършва отпред, отзад и от средата.
в) Основният принцип е да се извърши процесът на разделяне на пространството за търсене многократно, докато данните бъдат намерени или докато пространството за търсене не може да бъде разделено повече (което означава, че има възможност данните да не бъдат намерени).
г) И основното условие за двоично търсене в тази проста програма на езика C++ е данните в таблицата да бъдат сортирани.

C++ двоичен алгоритъм за търсене

1. Първо, началната позиция е 0 и крайната позиция = N - 1, след това средната позиция на данните се търси по формулата (начална позиция + крайна позиция) / 2. След това търсените данни се сравняват със средните данни. 2. След това търсим средната позиция на данните с формулата за средна позиция, а именно = (начална позиция + крайна позиция) div 2. 3. Тогава данните, които търсим, ще бъдат сравнени със средните данни a. Ако бъдат намерени същите данни, процесът е завършен. b. Ако е по-малък, тогава процесът ще се извърши отново, но крайната позиция се счита за същата като средната позиция -1. ° С. Ако е по-голям, процесът ще се извърши отново, но първоначалната позиция се счита за същата като средната позиция +1. 4. Повторете от стъпка две, докато данните бъдат намерени или не бъдат намерени. 5. Това двоично търсене ще приключи, ако се установи, че данните са на начална позиция, по-голяма от крайната позиция. Ако началната позиция е по-голяма от крайната позиция, това означава, че данните не са намерени.


Търсене с помощта на метода за двоично търсене

#включи
използване на пространство от имена std;
int main () { int n, число [12], ляво, дясно, център, темп, ключ; bool среща = невярно;
cout<<'HARDIFAL'< cout<<'========================================='< cout<<'=========PROGRAM BINARY SEARCH C++==========='< cout<<'========================================='< cout<<'Masukan jumlah data : '; cin>>n;
за (int i=0; i { cout<<'Angka ke - ['< cin>>число[i]; } за (int i=0; i { за (int j=0; j { ако (число [j] > число [j+1]) { темп=число[j]; числа[j]=числа[j+1]; номер[j+1]=temp; } } } cout<<'Data yang telah diurutkan adalah : '; за (int i=0; i { cout< } cout<<' Masukan angka yang dicari : '; cin>>ключ;
кожа=0; канан=n-1;
докато (кожа<=kanan) { център=(ляво + дясно)/2; ако (ключ == число [среда]) { срещам=вярно; прекъсване; } иначе ако (ключ { дясно = център -1; } друго { ляво = център +1; } } ако (намерено == вярно) cout<<'Angka ditemukan!'; друго cout<<'Angka tidak ditemukan'; връщане 0; }
Резултат - Пример за проста C++ програма за двоично търсене