
算法题_链表
wenkun97
这个作者很懒,什么都没留下…
展开
-
LeetCode 面试金典 面试题 02.08. 环路检测
给定一个链表,如果它是有环链表,实现一个算法返回环路的开头节点。有环链表的定义:在链表中某个节点的next元素指向在它前面出现过的节点,则表明该链表存在环路。示例 1:输入:head = [3,2,0,-4], pos = 1输出:tail connects to node index 1解释:链表中有一个环,其尾部连接到第二个节点。示例 2:输入:head = [1,2], pos = 0输出:tail connects to node index 0解释:链表中有一个环,其尾部连接到第原创 2020-08-18 15:11:06 · 157 阅读 · 0 评论 -
LeetCode 面试金典面试题 02.06. 回文链表
编写一个函数,检查输入的链表是否是回文的。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/palindrome-linked-list-lcci著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。O(n) 时间复杂度和 O(1原创 2020-08-18 14:30:35 · 203 阅读 · 0 评论 -
LeetCode 92. 反转链表 II
反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤ m ≤ n ≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULLtips : 需要用多个指针保存位置m, m-1的结点,然后反转,再把链表接起来,要考虑m=1的特殊情况。...原创 2020-04-03 21:59:07 · 215 阅读 · 0 评论 -
LeetCode 23.合并K个排序链表
合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[1->4->5,1->3->4,2->6]输出: 1->1->2->3->4->4->5->6tips: 分治,时间复杂度O(nlogk), 空间复杂度O(1)struct ListNode* mergeTwoListNod...原创 2020-03-11 21:56:07 · 103 阅读 · 0 评论 -
LeetCode 328. 奇偶链表
给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3->5->2-&g...原创 2020-03-11 12:23:09 · 198 阅读 · 0 评论