1、源代码 #include "list.h" // 1、创建头结点 Node * CreateHeadeNode(void) { Node *pHead = (Node *)malloc(sizeof(Node)); pHead->m_pNext = NULL; return pHead; } / ...
分类:
编程语言 时间:
2020-05-18 22:41:22
阅读次数:
64
单向循环链表: 单链表的一个变形是单向循环链表,链表中最后一个节点的next域不再为None,而是指向链表的头节点。 操作: is_empty() 判断链表是否为空 length() 返回链表的长度 travel() 遍历 add(item) 在头部添加一个节点 append(item) 在尾部添加 ...
分类:
其他好文 时间:
2020-04-09 12:45:25
阅读次数:
92
题意 给定一个无序单链表的头节点head,实现单链表的选择排序。 题解 按选择排序方法:每次从原链表找出最小值,从原链表删除,插入新的有序链表。 时间复杂度O(n^2) 额外空间复杂度O(1) 代码 public class Main { public static void main(String ...
分类:
编程语言 时间:
2019-05-31 23:43:19
阅读次数:
150
链表是由一组节点组成的集合。每个节点都使用一个对象的引用指向它的后继。指向另一个节点的引用叫做链。 链表分为单链表、双链表、循环链表。 一、单链表 插入:链表中插入一个节点的效率很高。向链表中插入一个节点,需要修改它前面的节点(前驱),使其指向新加入的节点,而新加入的节点则指向原来前驱指向的节点(见 ...
分类:
编程语言 时间:
2019-05-28 14:19:20
阅读次数:
131
单链表结构:物理存储结构上不连续,逻辑上连续,大小不固定。 单链表主要是以一个个节点组成,结点中又包含了两个域:1.存储数据的数据域 2.存储指针的指针域(java是以一个变量存储下一个结点的内存地址) 单链表插入操作: s.next=p.next; p.next=s;(注意插入的顺序) 单链表的删 ...
分类:
其他好文 时间:
2018-12-25 20:04:49
阅读次数:
149
单链表的基本操作 单链表结构体声明 单链表初始化 单链表添加(前插法) 单链表添加(后插法) 单链表取值 单链表查询(根据索引查询元素值) 单链表插入 单链表删除 单链表显示 ...
分类:
其他好文 时间:
2018-12-10 22:04:09
阅读次数:
267
将一个单链表进行处理后,所得结果为一有序链表 Solution: 将原始链表逐个查询,插入新链表,在插入的同时对链表进行排序。时间复杂度O(n*n) ...
分类:
编程语言 时间:
2018-03-07 00:46:29
阅读次数:
216
下图展示了单链表的基本结构: head指针是链表的头指针,指向第一个节点,每个节点的next指针域指向下一个节点,最后一个节点的next指针域为NULL,在图中用0表示。 下面先来看程序(栈的链式存储实现,另外一个实现点这里)和对应的输出(注意输出前进行了链表反转(见《单链表反转》,否则程序后面的w ...
分类:
其他好文 时间:
2018-02-26 11:23:21
阅读次数:
226
链式存储的队列称为链队列。和链栈类似,用单链表来实现链队,根据队列的FIFO原则,为了操作上的方便,分别需要一个头指针和尾指针。队头在链头,队尾在链尾。链式队列在进队时无队满问题,但有队空问题。队空条件为front->next==NULL。 链队描述如下: 链队的操作算法描述如下: 优先级队列 队列 ...
分类:
其他好文 时间:
2017-10-02 20:20:06
阅读次数:
164
来源:https://leetcode.com/problems/insertion-sort-list Sort a linked list using insertion sort. 方法: 1. 使用一个preHead指向头节点,这样在将节点插入头节点前面时(即某个节点值比头节点小)不需要进行 ...
分类:
编程语言 时间:
2017-09-19 22:52:54
阅读次数:
153