问题描述:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 思路:首先比较两个链表的头结点,如果链表1的头结点小于链表2的头结点,链表1的头结点将是合并后链表的头结点。然后继续合并两个链表中的剩余结点,两个链表中剩余的结点依然是有序的,因此合并步骤与第一步 ...
分类:
编程语言 时间:
2018-08-15 22:50:22
阅读次数:
202
问题六 :将两个单链表的相同的值,组成一个新的链表 问题七 :递增输出单链表 并释放节点 问题八 :将一个带头结点的单链表A 分解为两个带头结点的单链表A和B使A中保存原来序号为奇数的元素,B中保存原来序号为偶数的元素 问题九 :将C={a1,b1,a2,b2,...,an,bn},拆分为 A={a ...
分类:
编程语言 时间:
2018-07-24 16:02:26
阅读次数:
186
将单向链表按某值划分成左边小、中间相等、右边大的形式 给定一个单向链表的头节点head,节点的值类型是整数,再给定一个整数 pivot,实现一个调整链表的函数,使得左半部分的值都是小于pivot的节点,中间部分都是等于pivot的节点,右边部分都是大于pivot的节点,对于左半部分、中间、右半部分内 ...
分类:
其他好文 时间:
2018-07-16 23:45:24
阅读次数:
199
删除链表的中间节点和a/b处的节点 对于给定一个链表的头节点head,实现删除链表的中间节点的函数。 例如 不删除任何节点; 1->2,删除节点1 1->2->3,删除节点2 1->2->3->4,删除节点2 1->2->3->4->5,删除节点3 如果将本问题复杂一下,给定链表的头节点head、整 ...
分类:
其他好文 时间:
2018-07-15 00:19:12
阅读次数:
172
在单链表和双链表中删除倒数第K个节点 分别实现两个函数,一个可以删除单链表中的倒数第K个节点,一个可以删除双链表中的倒数第k 个节点,要求时间复杂度是 O(N),空间复杂度是 O(1)。 【解析】 基本思路: 让链表从头开始走到尾,每移动一步,就让k值减一,当k 值走到结尾时, 如果k 值大于0,说 ...
分类:
其他好文 时间:
2018-07-15 00:15:41
阅读次数:
152
Given a sorted linked list, delete all duplicates such that each element appear only once. Example 1: Example 2: 很简单的链表问题,可以写成递归和迭代两种形式。具体思路: 第一步,寻找第一 ...
分类:
编程语言 时间:
2018-07-02 14:16:32
阅读次数:
175
1.问题:输入一个链表,从尾到头打印链表每个节点的值。 2.思路:①使用递归 ②使用迭代之后再反转 list ③使用 Stack , 利用它的 LIFO(后进先出) 的特性(前提是允许使用 Stack) 3.代码: ①:使用递归 ②:使用迭代之后再反转 list ③:使用 Stack , 利用它的 ...
分类:
其他好文 时间:
2018-05-10 00:01:04
阅读次数:
191
要求时间复杂度O(nlogn),空间复杂度O(1),采用归并排序 传统的归并排序空间复杂度是O(n),原因是要用一个数组表示合并后的数组,但是这里用链表表示有序链表合并后的链表,由于链表空间复杂度是O(1),所以可以。 链表问题经常出现TLE问题或者MLE问题,这时候要检查链表拼接过程或者循环过程, ...
分类:
编程语言 时间:
2018-02-12 22:24:06
阅读次数:
201
Day3数据结构,强无敌。 基本讲的是栈,队列,链表,都是些还会的操作,然后接着讲的就比较心凉凉了,先讲了堆,然后是hsah 栈,队列,链表问题都不大,笔记记得都还好,堆就凉凉了。 不会不会不会,没学过没学过没学过,现在只知道堆是一个“父亲都比儿子小”或是“父亲都比儿子大”的完全二叉树,书上也没有… ...
分类:
其他好文 时间:
2018-02-10 23:25:51
阅读次数:
193
【问题描述】 给定N个整数,将这些整数中与M相等的删除 假定给出的整数序列为:1,3,3,0,-3,5,6,8,3,10,22,-1,3,5,11,20,100,3,9,3 应该将其放在一个链表中,链表长度为20 要删除的数是3,删除以后,链表中只剩14个元素:1 0 -3 5 6 8 10 22 ...
分类:
编程语言 时间:
2018-01-21 23:56:30
阅读次数:
314