数据结构 链栈的实现 1 链栈的定义 现在来看看 栈的链式存储结构,简称为链栈 。 想想看栈只是栈顶来做插入和删除操作,栈顶放在链表的头部还是尾部呢?由于单链表有头指针,而栈顶指针也是必须的,那干吗不让它俩合二为一呢,所以比较好的办法是把栈顶放在单链表的头部(如下图所示)。另外,都已经有了栈顶在头部 ...
分类:
编程语言 时间:
2019-01-28 00:54:39
阅读次数:
278
题目描述:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 思路分析:本题可以采用递归的方法,而且要考虑多种情况: (1)链表为空; (2)只有一个结点; (3)当前结点是重复 ...
分类:
其他好文 时间:
2019-01-28 00:45:03
阅读次数:
208
链式存储结构最大的好处就是没有空间的限制,可以通过指针指向将结点像以链的形式把结点链接,我们熟悉的线性表就有链式存储结构。 当然,栈同样有链式存储结构,栈的链式存储结构,简称链栈。 从图片可以看到,和单链表很像,拥有一个头指针top,又称作栈顶指针,所以此时就不再需要单链表里面的头结点了。 对于链栈 ...
分类:
编程语言 时间:
2019-01-23 00:16:58
阅读次数:
209
1. git mv rename name 然后 git add 2 .查看 .git 目录下边的文件 git cat-file -t daf480669aa9256fa18b5c28e467af816f16482d 3. 分离头指针: git checkout commitId (正工作在没有分支 ...
分类:
其他好文 时间:
2019-01-19 18:51:47
阅读次数:
158
题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 代码 ...
分类:
编程语言 时间:
2019-01-09 23:29:10
阅读次数:
225
题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 思路: class Solution { public: ListNode *deleteDuplication(L ...
分类:
其他好文 时间:
2019-01-08 19:22:29
阅读次数:
111
题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 思路: class Solution { public: ListNode *deleteDuplication(L ...
分类:
其他好文 时间:
2019-01-08 19:14:44
阅读次数:
130
头指针或者尾指针需要改变,并且需要把改变的值带回到主程序,带回到调用处需要用的指针的指针;当尾指针不发生改变,或者即使发生了改变也不希望带回到主程序当中就用指针; 1 链式存储结构 特点:用一组任意的存储单元存储线性表中的数据元素;这组存储单元可以使连续的也可以是不连续的;每个数据元素除了存储数据外 ...
分类:
其他好文 时间:
2019-01-01 14:59:02
阅读次数:
212
输入若干个正整数(输入-1为结束标志)建立一个单向链表,头指针为L,将链表L中奇数值的结点重新组成一个新的链表NEW,并输出新建链表的信息。 ...
分类:
其他好文 时间:
2018-12-20 20:30:49
阅读次数:
199
class node: def __init__(self, value): self.value = value self.next = None def reverse(head): if head is None or head.next is None or head.next.next i... ...
分类:
编程语言 时间:
2018-12-07 20:50:00
阅读次数:
241