排序算法
小心眼儿猫
这个作者很懒,什么都没留下…
展开
-
排序算法:快速排序和归并排序
快速排序(升序排序):快速排序的核心就是找到一个基准值(我们这里采用最后一个元素作为基准值),然后在剩下的区间里从左往右找到一个大于基准值的数,再从右往左找到一个小于基准值的数然后将二者交换,直到二者相遇一趟排序结束。然后在继续下一趟排序。 //////////////////////////////////// //快速排序的递归版本 /////////////////////////...原创 2018-06-03 11:37:57 · 476 阅读 · 0 评论 -
排序算法:冒泡,选择,插入,希尔以及堆排序
冒泡排序:时间复杂度O(N^2),空间复杂度O(1),稳定排序 这里的我们使用冒泡排序对数据升序排序,从后往前冒,每冒完一趟我们都会找到这一堆数据(待排序的数据)中最小的一个,并且该最小的数据就在待排序的数据中第一个位置上,此时我们修改有序的区间,再进行下一趟的冒泡排序,并且已经被排好的数据就不会二次被进行排序(二次排序是不必要的,这里就是借用一个有序区间避免了这种不必要)。 #inclu...原创 2018-05-30 17:05:55 · 251 阅读 · 0 评论