| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2190 人关注过本帖
标题:一个面试题
只看楼主 加入收藏
missiyou
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:531
专家分:218
注 册:2007-10-9
收藏
得分:0 
本人只会说一个我自己的一个方法,别的解法都是书上的,我在这里不说了
就是如何检测N长度的表。
我自己的想法就是,一个表,长度为N,如果这个表没有循环的话,那么,长度刚好N。如果大于N那么说明有循环。这样就好做了,
设一个头指针,遍历,在定义一个计数器,如果这个计数大于N。那么,循环。
2007-12-10 20:36
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
如果知道链表长度那好办多了,要这么麻烦做什么.

倚天照海花无数,流水高山心自知。
2007-12-10 21:17
missiyou
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:531
专家分:218
注 册:2007-10-9
收藏
得分:0 
,设二个指指针,p1,p2.排除最坏的情况。p1指向第一个元素,p2指向第三元素。特殊的就是如果第二个元素就是循环的话,那么就不能找到了,这样,p1=p1->next; p2=p2->next->next; 如果循环,最终,p1=p2; 就像,在操场上跑步,快的会追到慢的,如果追到话,证明循环,不管这个表有多长,还是在那个地方;
2007-12-10 21:33
missiyou
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:531
专家分:218
注 册:2007-10-9
收藏
得分:0 
12345
3524
1234
2007-12-10 21:39
快速回复:一个面试题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016542 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved