- 博客(4)
- 收藏
- 关注
原创 归并排序,合并合并合并再合并!
归并排序的时间复杂度呢为O(nlogn)产生的树的高度为logn,每层合并的总操作为n、空间复杂度为O(n)递归使用了O(logn)的栈空间合并使用了O(n)的辅助数组空间排序是稳定排序,因为在合并时候操作L[i]<=R[j]这段代码使两个相同的数不会调换相对位置。
2024-10-31 18:30:02
609
原创 快速排序的奥妙
选择一个基准元素使用双指针,用以交换元素比基准元素小的排到基准元素前面,比基准元素大的排到后面每次排完,基准元素就在他最后应该在的位置
2024-10-30 15:57:14
216
原创 插入排序瞟一眼就搞定!
插入排序算法很好理解就是从后面的待排序内容取一个基准元素插入到前面已排序内容中对应适当的位置。代码实现需要考虑到指针,即使用指针从基准元素前往前移动找到基准元素自己应该在的位置。时间复杂度最坏情况下,即刚好是逆序的情况下为O(n^2),怎么计算?数列1~n-1的求和时间复杂度最好情况下,即刚好是有序的情况下为O(n)。空间复杂度为O(1),只为指针开辟常数级空间。
2024-10-28 17:40:01
552
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅