|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 数据结构与算法 』
→ 一个面试题
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
2190
人关注过本帖
标题:
一个面试题
取消只看楼主
加入收藏
missiyou
等 级:
贵宾
威 望:
16
帖 子:531
专家分:218
注 册:2007-10-9
结帖率:
100%
楼主
收藏
问题点数:0 回复次数:3
一个面试题
问,“如何检测链表是循环链表”
如果长度为N的链表如何检测
如果允许做标记,如何检测,
最难的 如果链表的循环在任意位置,任意长度,如何检测是循环链表。
恩,就是这道题,
搜索更多相关主题的帖子:
面试
2007-12-09 22:58
举报帖子
使用道具
赠送鲜花
missiyou
等 级:
贵宾
威 望:
16
帖 子:531
专家分:218
注 册:2007-10-9
第
2
楼
收藏
得分:0
本人只会说一个我自己的一个方法,别的解法都是书上的,我在这里不说了
就是如何检测N长度的表。
我自己的想法就是,一个表,长度为N,如果这个表没有循环的话,那么,长度刚好N。如果大于N那么说明有循环。这样就好做了,
设一个头指针,遍历,在定义一个计数器,如果这个计数大于N。那么,循环。
2007-12-10 20:36
举报帖子
使用道具
赠送鲜花
missiyou
等 级:
贵宾
威 望:
16
帖 子:531
专家分:218
注 册:2007-10-9
第
3
楼
收藏
得分:0
,设二个指指针,p1,p2.排除最坏的情况。p1指向第一个元素,p2指向第三元素。特殊的就是如果第二个元素就是循环的话,那么就不能找到了,这样,p1=p1->next; p2=p2->next->next; 如果循环,最终,p1=p2; 就像,在操场上跑步,快的会追到慢的,如果追到话,证明循环,不管这个表有多长,还是在那个地方;
2007-12-10 21:33
举报帖子
使用道具
赠送鲜花
missiyou
等 级:
贵宾
威 望:
16
帖 子:531
专家分:218
注 册:2007-10-9
第
4
楼
收藏
得分:0
12345
3524
1234
2007-12-10 21:39
举报帖子
使用道具
赠送鲜花
4
1/1页
1
快速回复:
一个面试题
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.023949 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved