哈哈,我又来了。昨天发现题目太简单就没有放上来,今天来了一道有序链表的题。题目如下: Given a sorted linked list, delete all duplicates such that each element appear only once. For example, Giv ...
分类:
其他好文 时间:
2016-08-25 23:56:12
阅读次数:
230
Question:
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.
把有序链表转化成平衡的BST
Algorithm:
把链表转化成数组,再根据leetcode
No108. Convert Sort...
分类:
其他好文 时间:
2016-08-24 09:57:42
阅读次数:
164
类似的,合并两个有序的数组或者链表也是剑指Offer中的经典题型。题目描述如下:输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是按照递增排序的。我这里以合并链表来实现。 在这里,并不需要去创建一个新的链表,只要有三个节点指针就行,第一个节点指针Node1指向第一个链表,第二个节点指针Node2指向第二个链表,第三个节点指针Node3指向新的链表。简单的示意图如下:当下一个...
分类:
编程语言 时间:
2016-08-21 18:40:11
阅读次数:
247
有序链表的参数更换为 addr + reg ...
分类:
其他好文 时间:
2016-08-17 21:00:26
阅读次数:
219
链表: 1.判断链表是不是有环; 2.合并两个有序链表: 3.删除倒数第K个节点: 4.删除链表中的重复元素: 5.删除链表中的某个指定值 6.反转链表 7.判断两个链表的交差点 8交换两个链表: 9.删除给定的某个值:采用复制的方法; ...
分类:
其他好文 时间:
2016-08-16 00:25:36
阅读次数:
109
题目: Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists. 分析:合 ...
分类:
编程语言 时间:
2016-08-13 20:57:41
阅读次数:
241
83.RemoveDuplicatesfromSortedListGivenasortedlinkedlist,deleteallduplicatessuchthateachelementappearonlyonce.Forexample,Given1->1->2,return1->2.Given1->1->2->3->3,return1->2->3.题目大意:去除有序链表内部相同元素,即相同元素只保留..
分类:
其他好文 时间:
2016-08-12 15:22:58
阅读次数:
115
前面介绍了经典的数据结构和算法,这一节我们对这些数据结构和算法做一个总结,具体细节,请参见各个章节的详细介绍,这里我们用表格来呈现它们的效率。1. 数据结构部分数据结构中常用的操作的效率表通用数据结构查找 插入 删除遍历 数组O(N)O(1)O(N)—有序数组O(logN)O(N)O(N)O(N)链表O(N)O(1)O(N)—有序链表O(N)O(N)O(N)O(N)二叉树O(logN)O(log...
分类:
编程语言 时间:
2016-07-19 09:57:56
阅读次数:
179
La、Lb线性链表升序排列,将结果放在Lc链表里。之前有文章写过两个有序链表的合并 区别在于,前面的做法是保留La的头节点,free掉Lb的头节点,将余下节点串起来。这种方法是面向过程编程 而现在讨论的做法,是单独建立一个Lc链表,利用一些已经写好的基本操作函数来完成,这种模块化编程做法实际上还简单 ...
分类:
其他好文 时间:
2016-06-03 01:15:18
阅读次数:
190
一、题目要求:
将K个有序链表合并为一个有序链表
二、实现方法:
方法一:利用最小堆方法
用一个大小为K的最小堆(用优先队列+自定义降序实现)(优先队列就是大顶堆,队头元素最大,自定义为降序后,就变成小顶堆,队头元素最小),先把K个链表的头结点放入堆中,每次取堆顶元素,然后将堆顶元素所在链表的下一个结点加入堆中。
整体测试代码:
#include...
分类:
编程语言 时间:
2016-06-02 13:48:28
阅读次数:
243