Leetcode练题系列(三): 链表相关的算法

本文分享LeetCode链表题目的解题心得与技巧,包括翻转链表、删除节点、查找重复元素等,适合希望提升算法能力的程序员参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LeetCode

  英文官网(推荐)

  中文官网

  从2016年大二左右开始就接触算法,起初也简单练习过,但现在工作一段时间后,随着代码水平的提高(自我感觉),算法水平一直没有进步哈,所以记录下来相关题目,不断练习。

提前说说刷题的心得:

  • 只有算法不薄弱才能拿高工资,如果你想当一个nb的程序员,现在开始努力吧 !

  • 坚持,积少成多。万事开头难

  在题目预览表中,会有题目的编号和题目的难易程度,但是我认为,题目的难易程度并不能真的确定它难还是不难,只是人为对他评价而已,有些难的题确实 Easy。

  因为面试中遇到几次都是LeetCode原题,并且是英文题目,题目的标题都是LeetCode英文官网的链接地址。题目的编号中文官网地址。

题目预览表

  Linked List
  @花花酱大佬说一个标签做10-20题,遂找到如下进行练习。

#TitleDifficulty
2 Add Two NumbersMedium
19 Remove Nth Node From End of ListMedium
21 Merge Two Sorted ListsEasy
24 Swap Nodes in PairsMedium
25 Reverse Nodes in k-GroupHard
61 Rotate ListMedium
82 Remove Duplicates from Sorted List IIMedium
83 Remove Duplicates from Sorted ListEasy
86 Partition ListMedium
92Reverse Linked List IIMedium
143Reorder ListMedium
147Insertion Sort List ***Medium
148Sort List ***Medium
160Intersection of Two Linked ListsEasy
203Remove Linked List ElementsEasy
206Reverse Linked ListEasy
234Palindrome Linked ListEasy
237Delete Node in a Linked ListEasy
328Odd Even Linked ListMedium
445Add Two Numbers IIMedium

2. Add Two Numbers

在这里插入图片描述

19. Remove Nth Node From End of List

在这里插入图片描述
通过求出总长度 然后删除第几个就不难了

24. Swap Nodes in Pairs

在这里插入图片描述
3个指针 preHead left right

25. Reverse Nodes in k-Group

在这里插入图片描述
3个指针 preHead left right 什么时候切换preHead是个问题

61. Rotate List

在这里插入图片描述
形成一个换 Rotate 然后打破这个环

82. Remove Duplicates from Sorted List II

在这里插入图片描述
指针 pre curr 删除的依据是下一个值和当前值进行比较 然后 什么时候进行连接

83. Remove Duplicates from Sorted List

在这里插入图片描述

86. Partition List

在这里插入图片描述
重新构成链表 小的 大的 然后串一串

92. Reverse Linked List II

在这里插入图片描述
分割成三部分

143. Reorder List

在这里插入图片描述
找到那部分是后面的值 然后翻转

203. Remove Linked List Elements

在这里插入图片描述

206. Reverse Linked List

在这里插入图片描述

234. Palindrome Linked List

在这里插入图片描述

237. Delete Node in a Linked List

在这里插入图片描述

在这里插入图片描述
把下一个的值给当前位置,然后删除下个位置 666

328. Odd Even Linked List

在这里插入图片描述

445. Add Two Numbers II

在这里插入图片描述

一些总结

1.翻转链表

2.找到链表的中心点

3.得到链表长度

4.头插法构造链表

5.利用 preHead left right 多指针

文章的问题如题一致:翻转一个链表

尽量使用多的变量去引用位置 如 temp,prev,curr

回文判断的三种方法

头插法构造链表

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值