代码随想录算法训练营第四天---链表Part02

24.两两交换链表中的节点

这里关键是明确3个节点为一组

代码随想录算法训练营第四天---链表Part02_第1张图片

19.删除链表的倒数第N个节点

关键是确定怎么定位到倒数第N个节点,自己想了一下没想清,看了一下题解感觉慢指针和快指针间隔n+1后同时移动的思想很新颖,尝试自己写一下看:

居然一次性成功了!!!超开心

代码随想录算法训练营第四天---链表Part02_第2张图片看了一下题解,感觉JAVA版本的比c++版本的要稍微简单些,缺少了n>链表长度时以及fast指针为空的判端。我这里的关于头节点的判断不用单独列出来。

面试题 02.07. 链表相交

想了一下思路,不知道怎么分别移动A和B的指针

看了下题解:有点想前面slow和fast之间间隔的思想,先找到A和B的长度间隔之差,就可以同时移动了。

自己完成了,用了差不多半个小时,但还是很有成就感(虽然好像写的比较冗长。。。)

代码随想录算法训练营第四天---链表Part02_第3张图片

看完题解,基本上题解也是这么写。nice~~~

142.环形链表II

自己想了一下,没想明白

看题解:分两步

如何判断链表是否有环

判断环的位置

代码随想录算法训练营第四天---链表Part02_第4张图片

还是得之后多看几遍,勉强做出来了。

你可能感兴趣的:(算法)