算法学习小结

来源:互联网 发布:bf算法改良 编辑:程序博客网 时间:2024/06/06 17:57

对最近学习算法的小结,学算法其实并不难,在于多思考,多想,多写,写多了就发现无非是那么几类。在此小作总结,以便以后能很快的回想起来。

算法的基础,各种排序。

排序的n种方法。

各种排序算法:选择排序,冒泡排序,插入排序,快速排序,快速排序的随机方法,堆排序,希尔排序,二叉树排序,基数排序,计数排序

不稳定的排序:选择排序,快速排序,堆排序,希尔排序

下图大概总结了一下,看网上有个哥们儿这么写的,我在excel下重新敲了一遍,并更正了两处错误,分别是快排和归并排序的空间复杂度。



算法的常用数据结构:链表,循环链表,队列,栈


算法的几大类:递归,分治,回溯,动态规划


递归问题典型:汉诺塔,Fibonacci数列

分治:求逆序对

回溯:八皇后,全排列,二叉树求和

动态规划:背包问题,最大子数组和