1 链栈通常用单链表表示,由于栈的主要操作是栈顶插入与删除,显然以链表的头部作为栈顶最方便,而且没必要为了操作方便附加一个头结点 2 //链式存储结构(将单链表头指针与栈顶合二为一) 3 typedef struct StackNode 4 { 5 ElemType data; 6 struct S ...
分类:
其他好文 时间:
2020-03-14 13:11:30
阅读次数:
45
Node.h Node.cpp 源.cpp ...
分类:
其他好文 时间:
2020-03-10 12:17:20
阅读次数:
58
本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。 函数接口定义: List Merge( List L1, List L2 ); 其中List结构定义如下: typedef struct Node *PtrToNode; struct Node { ElementTyp ...
分类:
其他好文 时间:
2020-03-09 00:42:00
阅读次数:
64
题目链接:https://leetcode-cn.com/problems/sum-lists-lcci/ 给定两个用链表表示的整数,每个节点包含一个数位。 这些数位是反向存放的,也就是个位排在链表首部。 编写函数对这两个整数求和,并用链表形式返回结果。 示例: 输入:(7 -> 1 -> 6) + ...
分类:
其他好文 时间:
2020-03-03 10:40:22
阅读次数:
53
面试题 02.05. 链表求和 [toc] 1、题目描述 1. 给定两个用链表表示的整数,每个节点包含一个数位。 2. 这些数位是反向存放的,也就是个位排在链表首部。 3. 编写函数对这两个整数求和,并用链表形式返回结果。 试题链接:https://leetcode cn.com/problems/ ...
分类:
其他好文 时间:
2020-02-28 11:48:23
阅读次数:
67
题意 给出两个非空的链表用来表示两个非负的整数,他们的位数是按照逆序存储的,每个结点存储一位数字。求他们相加后的结果(用链表表示)。 思路 直接模拟。因为是逆序给出的所以直接遍历一遍按位相加就好了,实现过程中用一个变量记录进位情况。时间复杂度$O(max(m, n))$。 代码 总结 关于访问 里的 ...
分类:
其他好文 时间:
2019-12-27 00:04:32
阅读次数:
55
问:给出两个 非空 的链表,来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且每个结点只能存储 一位数字 。将这两个链表相加起来,返回一个新的链表,表示他们之和。 例如:342 + 465 = 807 两数相加这道题,处理的就是最简单的数学加法运算,只是它是建立在链表的基础之 ...
分类:
编程语言 时间:
2019-12-24 14:11:16
阅读次数:
81
6-5 两个有序链表序列的合并 (15 分) 本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。 函数接口定义: List Merge( List L1, List L2 ); 其中List结构定义如下: typedef struct Node *PtrToNode; s ...
分类:
其他好文 时间:
2019-11-25 20:25:11
阅读次数:
91
HashMap是一个线程不安全的容器,当容量大于 发生扩容时可能会出现环形链表从而导致死循环 扩容就是rehash,这个会重新将原数组的内容重新hash到新的扩容数组中,在多线程的环境下,存在同时其他的元素也在进行put操作,如果hash值相同,可能出现同时在同一数组下用链表表示 因此引进了线程安全 ...
分类:
其他好文 时间:
2019-11-02 00:32:10
阅读次数:
97
本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。 函数接口定义: 其中List结构定义如下: L1和L2是给定的带头结点的单链表,其结点存储的数据是递增有序的;函数Merge要将L1和L2合并为一个非递减的整数序列。应直接使用原序列中的结点,返回归并后的带头结点的链表头 ...
分类:
其他好文 时间:
2019-10-14 23:46:51
阅读次数:
90