Im очень новый для программирования, и я в настоящее время пытаюсь написать код для двоичного поиска слова в файле .txt
с использованием vector
. Программа проверяет, найдено ли слово, если искомое слово не записано в файл .txt
. Проблема в том, что я не совсем уверен, что правильно использую std::vector
, и я почти уверен, что есть большая проблема с моей функцией BinarySearch()
.I прочитали почти каждый код в Интернете за binary_search
, но я просто не могу заставить его работать. Я могу реально использовать некоторую помощь ... Файл TXT сортируется (одно слово в каждой строке) .Отель текущий код находит только 2-3 из 15 words.Here моя последняя попытка:Двоичный поиск слова
void BinarySearch(vector<string> cont,string s)
{
int middle;
int first=0;
int leng=cont.size();
int last=leng-1;
bool found=false;
while(first<=last && !found)
{
middle=(first+last)/2;
if(cont[middle]==s)
{
found=true;
}
else {
if(cont[middle]<s)
{
last=middle-1;
}
else
{
first=middle+1;
Вы можете получить большую помощь от инструмента, называемого * отладчиком *. Один шаг через код, утверждение по инструкции, * просмотр * одной или нескольких переменных. Сообщите нам, какие заявления являются причиной проблемы. –