![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
审美高地蜡笔小新
这个作者很懒,什么都没留下…
展开
-
归并排序
归并排序运用分治法,先将无序序列不断分解,再将有序子序列逐层合并,得到完全有序序列。 归并排序的算法我们通常用递归实现,先把待排序区间[s,t]以中点二分,接着把左边子区间排序,再把右边子区间排序,最后把左区间和右区间用一次归并操作合并成有序的区间[s,t]。 归并细节:比较a[i]和b[j]的大小,若a[i]≤b[j],则将第一个有序表中的元素a[i]复制到r[k]中,并令i和k分别加上原创 2017-10-03 15:35:30 · 269 阅读 · 0 评论 -
选择排序
首先,找到数组中最小的那个元素,其次,将它和数组的第一个元素交换位置。接着,在剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。如此往复,直到将整个数组排序。 选择排序的运行时间与输入序列无关,与输入规模有关。数据移动最少,交换次数和数组的大小是线性关系。 可见,0到N-1的的任意i都会进行一次交换和N-1-i次比较,因此总共有N次交换以及(N-1)+(N-2)+..原创 2017-10-05 12:49:31 · 154 阅读 · 0 评论 -
插入排序
插入排序C/C++实现原创 2017-10-02 19:56:06 · 186 阅读 · 0 评论