|
2 | 2 | ## 线性表
|
3 | 3 | 顺序表是一种典型的线性结构,是最简单、最常用的数据结构。
|
4 | 4 | 在计算机中线性表可以采用两种方式来保存,一种是顺序存储结构,另一种是链式存储结构.
|
5 |
| -- [顺序表结构](./src/dataStructure/orderList) |
6 |
| -- [链表结构](./src/dataStructure/linkedList) |
| 5 | +- [顺序表结构](./src/dataStructure/orderList#top) |
| 6 | +- [链表结构](./src/dataStructure/linkedList#top) |
7 | 7 |
|
8 | 8 | ## 栈结构
|
9 | 9 | 栈结构是一种线性结构,栈结构包括两类:
|
10 |
| -- [顺序栈结构](./src/dataStructure/stack):即使用一组地址连续的内存单元依次保存栈中的数据。在程序中,可以定义一个指定大小的结构数组来作为栈,序号为0的元素就是栈底,再定义一个变量top保存栈顶的序号即可。 |
| 10 | +- [顺序栈结构](./src/dataStructure/stack#top):即使用一组地址连续的内存单元依次保存栈中的数据。在程序中,可以定义一个指定大小的结构数组来作为栈,序号为0的元素就是栈底,再定义一个变量top保存栈顶的序号即可。 |
11 | 11 | - 链式栈结构:即使用链表形式保存栈中各元素的值。链表首部(head引用所指向元素)为栈顶,链表尾部(指向地址为null)为栈底。
|
12 | 12 |
|
13 | 13 | 栈结构是按照“后进先出”的原则处理节点数据的。在栈结构中,只有栈顶元素是可以访问的。一般栈结构的基本操作有两个:
|
|
16 | 16 |
|
17 | 17 | ## 队列结构
|
18 | 18 | 从数据的逻辑结构来看,队列(Queue)是一种线性结构。如果从数据的存储结构来进一步划分,队列结构包括两类。
|
19 |
| -- [顺序队列结构](./src/dataStructure/queue):即使用一组地址连续的内存单元依次保存队列中的数据。在程序中,可以定义一个指定大小的结构数组作为队列。 |
| 19 | +- [顺序队列结构](./src/dataStructure/queue#top):即使用一组地址连续的内存单元依次保存队列中的数据。在程序中,可以定义一个指定大小的结构数组作为队列。 |
20 | 20 | - 链式队列结构:即使用链表形式保存队列中各元素的值。
|
21 | 21 |
|
22 | 22 | 从数据的运算角度来分析,队列结构是按照“先进先出”的原则处理结点数据的。在队列结构中,数据运算非常简单。一般队列结构的基本操作只有
|
|
47 | 47 | static final int MAXLEN = 100; // 最大结点数
|
48 | 48 | char[] SeqBinaryTree = new char[MAXLEN]; // 定义保存二叉树数组
|
49 | 49 | ```
|
50 |
| -- [二叉树的链式存储](./src/dataStructure/tree):与线性结构的链式存储类似,二叉树的链式存储结构包含结点元素及分别指向左子树和右子树的引用。 |
| 50 | +- [二叉树的链式存储](./src/dataStructure/tree#top):与线性结构的链式存储类似,二叉树的链式存储结构包含结点元素及分别指向左子树和右子树的引用。 |
51 | 51 | 二叉树的链式存储结构定义代码实例:
|
52 | 52 | ```java
|
53 | 53 | class CBTType{ // 树结点的类型结构
|
@@ -76,6 +76,6 @@ CBTType root = null; // 定义二叉树根结点引用
|
76 | 76 |
|
77 | 77 | # 数据结构与算法 面试题(Java版) :sparkles:
|
78 | 78 |
|
79 |
| -- [单例模式的六种实现](./src/review02) |
80 |
| -- [二位数组中的查找](./src/review03) |
81 |
| -- [字符串替换空格](./src/review04) |
| 79 | +- [单例模式的六种实现](./src/review02#top) |
| 80 | +- [二位数组中的查找](./src/review03#top) |
| 81 | +- [字符串替换空格](./src/review04#top) |
0 commit comments