随笔分类 -  [算法/数据结构] 链表

摘要:<> 题目 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 示例 1: 输入: 1->2->3->3->4->4->5 输出: 1->2->5 示例 2: 输入: 1->1->1->2->3 输出: 2->3 给定一个排序链表,删除所有含有重复数字的节点,只保 阅读全文
posted @ 2019-09-24 16:30 remly 阅读(148) 评论(0) 推荐(0)
摘要:<环形链表> 题目 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2->3->4->NULL 向右旋转 阅读全文
posted @ 2019-09-23 14:29 remly 阅读(162) 评论(0) 推荐(0)
摘要:<递归> 题目 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例: 给定 1->2->3->4, 你应该返回 2->1->4->3. 题解 - 迭代 class Solution(object): def swapPai 阅读全文
posted @ 2019-09-19 16:55 remly 阅读(205) 评论(0) 推荐(0)
摘要:<回文判断><快慢指针-链表中点> 题目 请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 请判断一个链表是否为回文链表。 示例 1: 阅读全文
posted @ 2019-09-03 18:14 remly 阅读(154) 评论(0) 推荐(0)
摘要:<> 题目 编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 输出:Ref 阅读全文
posted @ 2019-08-26 18:37 remly 阅读(166) 评论(0) 推荐(0)
摘要:<循环不变式的思想> 题目描述 反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 我的思路 - 迭代 class Solution: def reverseLis 阅读全文
posted @ 2019-08-24 22:45 remly 阅读(205) 评论(0) 推荐(0)
摘要:<题面陷阱> 题目 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。 现有一个链表 -- head = [4,5,1,9],它可以表示为: 示例 1: 输入: head = [4,5,1,9], node = 5 输出: [4,1,9] 解释: 给定你链表中 阅读全文
posted @ 2019-08-24 19:05 remly 阅读(219) 评论(0) 推荐(0)
摘要:<归并排序思想> <递归不好想啊> <虚拟头结点技巧> 题目 Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes o 阅读全文
posted @ 2019-07-23 22:05 remly 阅读(148) 评论(0) 推荐(0)
摘要:【解析】 1.遍历每个节点 2.遍历过的节点用新的空间来标记 JS新的空间不用在使用前声明,用法参考实现。(JS原型、原型链) 3.如果遇到标记过的节点则是环形 【实现】 阅读全文
posted @ 2019-02-21 13:20 remly 阅读(250) 评论(0) 推荐(0)
摘要:【实现链表的添加】 【Q&A】 1.构造链表的时候数据存储在哪里,以什么形式来存储的? 数据存储在对象node中:node作为成员变量来接收数据,每次调用addit来像node中添加数据。 以嵌套的形式存储:node[ data1, [ data2, None ] ] 阅读全文
posted @ 2018-12-04 19:25 remly 阅读(1071) 评论(0) 推荐(0)