【问题标题】:error in searching a linked list搜索链表时出错
【发布时间】:2014-12-02 18:44:45
【问题描述】:

我的任务是寻找一种搜索链接列表的方法。我用我的代码实现了顺序搜索,但不知何故它不会检测到输入到链接列表的第一个数字......这是为什么呢?我可以找到其他号码就好了。

这是我的代码; https://www.dropbox.com/s/r8zpto80zw41vs4/LINKEDLIST.cpp?dl=0

另外,我尝试对我的代码使用二进制搜索,但我无法正确...任何帮助都非常感谢,谢谢!

【问题讨论】:

  • 请将代码减少到演示问题所需的绝对最低限度并在此处发布。

标签: list search binary linked-list


【解决方案1】:

当当前循环之后没有元素时,您的 while 循环将停止。发生这种情况时,代码不会查看当前元素。改变

while(look->next!=NULL){

while(look!=NULL){

在链表中,无法通过索引访问元素。因此,使用二进制搜索而不是线性搜索没有任何好处。两者都是O(n)

【讨论】:

  • 谢谢你,它现在可以工作了。至于二分查找,其实没关系,这是大学的作业,教授要求我们找到一种方法来实现链表的二分查找……我似乎无法让它工作。
  • @Wei:有办法通过索引获取一个item,然后根据索引实现二分查找。
猜你喜欢
  • 2019-09-06
  • 1970-01-01
  • 2011-08-03
  • 1970-01-01
  • 2016-03-23
  • 2015-05-20
  • 2016-06-29
  • 1970-01-01
  • 2014-04-07
相关资源
最近更新 更多