- 博客(17)
- 收藏
- 关注
原创 力扣第82题 删除排序链表中的重复元素II
给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字。返回 已排序的链表。输入:head = [1,2,3,3,4,4,5]输入:head = [1,1,1,2,3]链表中节点数目在范围 [0, 300] 内。题目数据保证链表已经按升序 排列。输出:[1,2,5]
2023-09-15 23:38:20
400
原创 力扣第24题 两两交换链表中的结点
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。链表中节点的数目在范围 [0, 100] 内。输入:head = [1,2,3,4]输入:head = [1]输出:[2,1,4,3]输入:head = []
2023-09-15 23:37:27
204
2
原创 力扣第206题 反转链表
其实思路很简单,反转的时候一共需要三个指针,分别指向当前节点(L),以及当前节点的前(pre)和后(pos)结点。给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。输入:head = [1,2,3,4,5]链表中节点的数目范围是 [0, 5000]输入:head = [1,2]输出:[5,4,3,2,1]输入:head = []
2023-09-15 23:36:17
151
原创 力扣第19题 删除链表的倒数第N个结点
但是会有一种特殊情况,当p刚好到达NULL结点,且此时的倒数第n个结点就是头节点的时候,我们删除的应该是头节点,然后将头结点的next给return回去。那么这样当p指针遍历到最后一个节点的时候,q指针刚好指向要被删除的结点的前一个结点(这样方便删除),然后我们删除p的next结点即可。设置两个指针,一个前指针(p),一个后指针(q),后指针q距离前指针p n个长度,输入:head = [1,2,3,4,5], n = 2。输入:head = [1,2], n = 1。输出:[1,2,3,5]
2023-09-15 23:35:32
111
原创 二叉树的先中后三种线索化(递归方式遍历)
2.1 王道视频中有讲解 先序线索化需要考虑子节点递归结束后时候会因为父节点的线索化而导致死循环,但是视频课中貌似忽略了一种情况,详情见下方代码。可以看到已经正常线索化。
2023-09-15 23:33:45
310
原创 力扣LeetCode第二题
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]你可以假设除了数字 0 之外,这两个数都不会以 0 开头。输入:l1 = [2,4,3], l2 = [5,6,4]请你将两个数相加,并以相同形式返回一个表示和的链表。输入:l1 = [0], l2 = [0]输出:[8,9,9,9,0,0,0,1]题目数据保证列表表示的数字不含前导零。输出:[7,0,8]
2023-09-15 23:30:27
231
转载 Python(dos、cmd窗口)中使用循环加sleep出现的问题
python踩坑注意! python循环和sleep一起使用时(尤其是在dos窗口中)出现的问题
2023-02-16 14:40:53
713
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人