以前有句话说程序==算法+数据结构,其实不然,如果说编程像是在盖楼房,那么学好数据结构和算法,就是在打下一个完美的地基。
所以今天闲着无聊,给大家总结总结,几个非常非常基础的算法,这在许多公司的笔试,面试中都要可能出现。今天我所要想讨论的是排序算法,说到排序算法,大家在熟悉不过的是冒泡排序算法,在我后来接触的一些列排序算法中,后来想想每个算法都有其巧妙之处,也不单单是为了追求的时间上的效率。下面我就来列出主要的几种排序算法。
1.冒泡排序算法,平均时间复杂度o(n2),作为一种性能还算不错的排序算法
2.选择排序算法
3.插入排序算法
4.归并排序算法
5.桶排序算法
6.基数排序算法
7.希尔排序算法
8.堆排序算法,其中涉及到了一些数据结果中的一些的知识
9.快速排序算法,快速排序算法,在此类中的 排序性能中算是最好吧,但是如果一组数字基本都是有序的情况的时候,快速排序就又会被退化为冒泡排序,基本排序算法差差不多都列在上面了,具体掌握上述中排序算法的精髓,对于面试还是很有帮助的