剑指offer-18-2. 删除链表中重复的结点链表在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5思路:采用递归的方法查找从头节点开始重复的节点如果没有重复节点,pHead.... ...
分类:
其他好文 时间:
2019-12-26 00:04:53
阅读次数:
86
师--链表的结点插入 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 给出一个只有头指针的链表和 n 次操作,每次操作为在链表的第 m 个元素后面插入一个新元素x。若m 大于链表的元素总数则将x放在链表的最后。 Inpu ...
分类:
其他好文 时间:
2019-12-18 22:06:20
阅读次数:
128
链表中的头指针和头结点 链式存储 指针域(单链表),来记录下一个结点的存储位置(地址) 插入和删除结点时,只需要修改指针即可 struct node{ int data; struct node *next; } data是数据域,用于存储数据 next是指针域,用于存储下一个结点的位置(地址) ...
分类:
其他好文 时间:
2019-12-14 09:41:02
阅读次数:
110
函数deletelist从以head为头指针的链表中删除成绩低于min_score的学生,并返回结果链表的头指针。 1 struct stud_node *deletelist( struct stud_node *head, int min_score ) { 2 //删除成绩低于min_scor ...
分类:
其他好文 时间:
2019-12-07 14:39:51
阅读次数:
64
排序大法总结 这里的排序都是一些函数调用,默认为int类型,从小到大,第一个参数为头指针,第二个为数组长度. 直接选择排序 时间复杂度为 $$O(n^{2})$$ 是不稳定排序. 思路: 每次选出待排区间的最值,放在第一个. 冒泡排序 时间复杂度在最坏以及平均情况下下为 ),最好情况下为 ),是稳定 ...
分类:
编程语言 时间:
2019-10-18 19:05:17
阅读次数:
85
题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 题解: 这道题没什么讲的,注意指向空的边界就行,新建一个头节点更容易处理。 1 class Solution { 2 ...
分类:
其他好文 时间:
2019-10-11 23:48:26
阅读次数:
103
链表概述 链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个“头指针”变量,以head表示,它存放一个地址。该地址指向一个元素。链表中每一个元素称为“结点”,每个结点都应包括两个部分:一为用户需要用的实际数据,二为下一个结点的地址。因此,head ...
分类:
编程语言 时间:
2019-10-10 15:20:53
阅读次数:
88
题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2 ...
分类:
其他好文 时间:
2019-10-09 19:22:56
阅读次数:
85
1、思路 吸取了前几道题设置头节点重新插入的想法 建立空的头节点,和一个指向结点的指针p用来控制插入的位置 判断第一个值和第二个值是否相等相等,链表头指针向后移动,直至不等,把head结点插入到空结点后面,直至完成 2、错误 错误提示:Line 16: Char 18: runtime error: ...
分类:
其他好文 时间:
2019-10-07 23:45:19
阅读次数:
222
ConcurrentLinkedQueue ConcurrentLinkedQueue内部的队列使用带头节点的单向链表实现,并且维持头尾两个指针,头指针出队、尾指针入队。该队列的出队入队操作都是线程安全的。 保证安全的方式 对于头尾指针均使用volatile关键字修饰从而保证可见性,对于头尾指针的修 ...
分类:
编程语言 时间:
2019-10-07 11:19:57
阅读次数:
78