我想用 C 编写一个对字符串数组的二进制搜索。
我已经编写了这段代码,它编译时没有错误,但是当我尝试搜索时,它没有给出任何结果。任何帮助,将不胜感激。
字符串是一个类型定义。很抱歉一开始没有澄清这一点。
//Looks up word s, in dictionary.
bool lookup(string s)
{
int min = 0;
int max = dictionary.size - 1;
int mid;
bool found = false;
while (min <= max && !found)
{
mid = (min + max) /2;
if (dictionary.words[mid].letters == s)
found = true;
else if (dictionary.words[mid].letters > s)
max = mid -1;
else
min = mid + 1;
}
return found;
}