数据结构和算法

数据结构
1、链表

查找
插入
移除

2、栈(先进后出,尾部添加或删除元素)

push(入栈)
pop(出栈)
peek(获取顶部值)

3、队列(先进先出,尾部添加元素,头部删除元素)

enqueue(入队)
dequeue(出队)
peek(获取顶部值)

4、双链表(与链表区别在于,双向指针)

查找
插入
移除

5、双端队列(与栈和队列的区别,首尾都能添加元素,首尾均能出列)

enqueue(入队)
dequeue(出队)
peek(获取顶部值)

算法
1、冒泡排序 和选择排序


0.png

2、插入排序


1.png

3、希尔排序


2.png

4、 二分查找


3.png

5、快排


4.png

6、二叉树

二叉树这个比较麻烦 还有平衡二叉树 有点绕 如果不懂二叉树这一块 你是百分之二百看不懂的

  1. 如果左子树非空,那么左子树所有节点的值均小于它的根节点

  2. 如果右子树非空,那么右子树所有节点的值均大于它的根节点

  3. 左右子树也分别为二叉排序树

估计此时你心里快骂娘了,什么左子树 右子树 什么二叉树 这是哪个山洞跑出来的,其实我也不知道怎么去解释,这东西就是太绕了。后续还有

归并排序算法、戴克斯特拉算法,快捷算法,动态规划,堆排序,归并排序等等。

转载:https://www.jianshu.com/p/1b43f4eac8d8

你可能感兴趣的:(数据结构和算法)