> For the complete documentation index, see [llms.txt](https://blog.yuyy.tech/mian-shi-shu-li/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://blog.yuyy.tech/mian-shi-shu-li/readme/shu-ju-jie-gou.md).

# 数据结构

数据结构（data structure），是数据的组织、管理和存储格式， 目的是为了高效地处理数据。

主要数据结构有8种：

1. [栈（Stack）](/mian-shi-shu-li/readme/shu-ju-jie-gou/zhan-stack.md)
2. [队列（Queue）](/mian-shi-shu-li/readme/shu-ju-jie-gou/dui-lie-queue.md)
3. [数组（Array）](/mian-shi-shu-li/readme/shu-ju-jie-gou/shu-zu-array.md)
4. [链表（Linked List）](/mian-shi-shu-li/readme/shu-ju-jie-gou/lian-biao-linked-list.md)
5. [树（Tree）](/mian-shi-shu-li/readme/shu-ju-jie-gou/shu-tree.md)
6. [堆（Heap）](/mian-shi-shu-li/readme/shu-ju-jie-gou/dui-heap.md)
7. [图（Graph）](/mian-shi-shu-li/readme/shu-ju-jie-gou/tu-graph.md)
8. [散列表（Hash Table）](/mian-shi-shu-li/readme/shu-ju-jie-gou/san-lie-biao-hash-table.md)

按`存储结构`划分：

* 线性表：
  * 一维数组
  * 队列
  * 栈
  * 链表
* 非线性表：
  * 二维数组
  * 散列表（哈希表）
  * 树
  * 图
  * 堆

按`存储方式`划分：

* 数组：顺序存储，存储地址是连续的，所以查找元素时可以根据存储地址直接获取
* 链表：链式存储，存储地址不连续，当前元素存储着后一个元素的地址，所以查找元素要从第一个开始查

算法（algorithm）依托于数据结构，不同的数据结构由于其自身特点，有其固有的算法模式，比如：数组的各种查找和排序，树的各种方式遍历。
