算法与数据结构
文章平均质量分 65
算法学习与刷题整理
蒙多想去
繁星纵变,智慧永恒
展开
-
简单写个归并排序
归并和快排用到的都是分治的思想,关于归并排序的步骤可以看我之前的文章,里边有动图和文字描述,很容易理解,关于快排的代码实现在之前已经写过,今天我们来看一下归并排序的代码实现。 归并排序思想是将待排序的序列递归地分为左右两个子序列,直到子序列无法在分割,即只剩下一个元素的时候,将划分好的子序列按大小顺序合并,最后得到的序列就是有序的。 在进行归并的时候,我们使用两个指针i,j分别指向左边序列[l,mid],和右边序列[mid+1,r]的第一个元素的位置...原创 2021-08-05 21:00:07 · 153 阅读 · 0 评论 -
简单写个快排
对于时间复杂度为O(nlogn)的高级排序算法,虽然排序原理了解,但是落实到代码上还是会有一写生疏,最近在刷leetcode时候看到一个排序题,所以有重新研究了一下快排的代码,想学习或者重温排序算法,可以去这里练习。快速排序使用了分治的思想,先选取一个主原pivot,比主原小的放在左边,比主原大的放在右边,在递归的对左边和右边进行同样的操作,最后就可以得到一个有序数组,关于排序的算法,可以参看我之前的文章,里边介绍了各种排序算法的操作步骤,配合动图可以快速的理解。 快排首...原创 2021-08-04 21:21:34 · 288 阅读 · 0 评论 -
排序算法学习总结
内部排序:数据保存在内存空间里,排序动作在内存中一次性完成 外部排序:数据占用内存大于内存空间所进行的排序 稳定性:任意两个相等的数据,排序前后顺序并不发生改变原创 2021-06-13 20:22:34 · 374 阅读 · 0 评论