排序算法
文章平均质量分 57
深夜的雨声
这个作者很懒,什么都没留下…
展开
-
C++实现选择排序算法
选择排序算法的基本思想:每一轮找到最小(升序)的元素放在当前序列的最前面。 特点:先找到最小元素,记录下标,最后交换。 时间复杂度:O(n^2)。以下为实现代码: #include <iostream> using namespace std; void sort(int *arr,int length) //传入数组首地址和数组长度 { int index;...原创 2019-04-22 20:00:31 · 7994 阅读 · 0 评论 -
C++实现插入排序算法
插入排序算法的原理:从前往后依次把元素插入到相应的位置。比插入元素大的向后移一个单位,直到找到比其小或者相等的元素才停止循环,并把元素插入到当前位置。 时间复杂度:O(n^2)。以下为实现代码: #include <iostream> using namespace std; void sort(int *arr,int length) //传入数组首地址和数组长度 {...原创 2019-04-22 22:41:34 · 1333 阅读 · 0 评论 -
归并排序(MERGE-SORT)实现
归并排序(MERGE-SORT): 利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案“修补”在一起,即分而治之)。 归并排序是稳定排序算法。平均时间复杂度为O(nlogn),因为每次合并的平均时间复杂度为O(n),总的深度...原创 2019-07-14 17:26:33 · 405 阅读 · 0 评论