03 2023 档案

摘要:1. 复制带随机指针的链表 题目链接 题目描述 解题思路 首先,解这道题必须要理解链表在内存中的表示 字母表示每一个节点在内存中的起始地址, 每一个节点空间的next 存储下一个节点的地址, random存储随机节点的地址 然后理解题目意思, 这道题要求创建一个拷贝链表,每一个拷贝节点的val = 阅读全文
posted @ 2023-03-24 11:26 许木101 阅读(15) 评论(0) 推荐(0) 编辑
摘要:1. 环形链表 题目链接 题目描述 解题思路 在这道题中, 判断链表是否存在环, 可以转换为快慢指针追击问题 快指针一次走两步, 慢指针一次走一步,当慢指针进环, 快指针追击慢指针 如果快指针追到了慢指针,就可以证明该链表带环 /** * Definition for singly-linked l 阅读全文
posted @ 2023-03-23 15:59 许木101 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1. 移除链表元素 题目链接 题目描述 解题思路 这道题较好的解法是创建一个新链表, 把不等于val的节点链接到一起, 然后返回新链表的头结点 struct ListNode* removeElements(struct ListNode* head, int val){ struct ListNo 阅读全文
posted @ 2023-03-22 14:22 许木101 阅读(14) 评论(0) 推荐(0) 编辑
摘要:1. 移除元素 题目链接 要求时间复杂度为O(N), 空间复杂度为O(1) 解法: 双指针 int removeElement(int* nums, int numsSize, int val){ int src = 0, dst = 0; while (numsSize--) { if (nums 阅读全文
posted @ 2023-03-18 09:34 许木101 阅读(26) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示