关于相交链表、带环链表、链表深拷贝的思路整理

发布时间:2020-06-16 09:07:34 作者:凉白开dream
来源:网络 阅读:348

返回相交链表的交点:1.先求出两个链表的各自长度
2.让长的先走他们的(长度差)步
3.然后两者同时走,第一次相遇就是交点(返回该结点)

判断链表是否带环:1.快慢指针(快的走两步,慢的走一步,不能一个一步,一个n步(N>2),可能会错过)
2.如果两个指针相遇,则链表带环;如果快的遇到null,则不带环(直线形)

求入环点:
1).转化为相交问题(求取相遇结点)
2).一个从起点,一个从交点,都每次走一步,第一次相遇点为入环点

相交+带环(六种情况)

复杂链表的复制
1)简单复制无法解决(因为是浅拷贝)
2)先复制结点,再考虑random问题
3)如果能从老的结点中找到新的结点问题好解决

结构:
1.老-新-老-新...
2.处理random
3.拆开

推荐阅读:
  1. 数据结构(05)_链表01(单链表、静态单链表、单向循环链表)
  2. 单链表(包含反转、导出、循环链表思路)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

关于相交链表、带环链表、链表深拷贝的思路 深拷 带环链表

上一篇:jQuery事件绑定

下一篇:[Linux管道和IPC]使用msgget创建消息队列

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》