1. 什么是数据结构?
数据结构(Data Structure)是计算机存储、组织数据的方式。指相互之间存在一种或多种特定关系的数据元素的集合。
1.1 线性表
1.1.1 顺序表(插入、删除、查找、修改、遍历)
1.1.2 链表
1.1.2.1 单链表(插入、删除、查找、修改、遍历)
1.1.2.2 双链表(插入、删除、查找、修改、遍历)
1.1.2.2 循环链表(插入、删除、查找、修改、遍历)
1.1.3 栈和队列
1.1.3.1 栈(入栈、出栈、取栈顶元素、判空)
1.1.3.2 队列(入队、出队、取队首元素、判空)
1.2 非线性表
1.2.1 树结构
1.2.1.1 二叉树
1.2.1.1.1 二叉搜索树
1.2.1.1.2 完全二叉树
1.2.1.1.3 平衡二叉树
1.2.1.1.4 哈夫曼树
1.2.1.1.5 最小堆和最大堆
1.2.1.1.6 二叉树遍历
1.2.1.2 AVL树
1.2.1.3 B树和B+树
1.2.1.4 Trie树
1.2.1.5 树的遍历
1.2.2 图结构
1.2.2.1 图的表示
1.2.2.2 图的遍历
1.2.2.3 最短路径算法
1.2.2.4 最小生成树算法
1.2.2.5 拓扑排序
1.2.3 堆结构
1.2.3.1 最小堆
1.2.3.2 最大堆
1.2.3.3 堆的插入和删除
1.2.3.4 堆排序
1.2.4 散列表
1.2.4.1 哈希函数
1.2.4.2 冲突解决方法
1.2.4.3 散列查找
1.2.4.4 散列表实现
2.什么是算法?
算法(algorithm)就是定义良好的计算过程,他取一个或一组的值为输入,并产生一个或一组值作为输出,简单来说算法就是一系类的计算步骤,用来将输入数据转化成输出结果。