数据结构与算法
ahojcn
这个作者很懒,什么都没留下…
展开
-
【数据结构与算法】堆排序、堆化 heapify
文章目录基础知识关于堆的介绍已经一大堆了,这里主要总结下笔记 && 对比下这几个 O(nlogn) 的排序效率。基础知识大堆:堆顶元素大于左右孩子。小堆:堆顶元素小于左右孩子。...原创 2020-04-20 10:32:09 · 1069 阅读 · 0 评论 -
【数据结构与算法】快速排序、随机基准值、双路快排、三路快排
在 https://visualgo.net/zh/sorting 的 QUI 标签中可以看到快排序动画演示。快速排序:平均时间复杂度:O(nlogn),最坏情况下 O(n^2)空间复杂度:O(1)基本思想:分治。找一个基准元素,以基准元素分解,左边是比基准元素小的,右边是比基准元素大的。这样就把一个待排序数组分成了左右两部分。对左、右分别进行上面的步骤。4 3 5 6 2 1...原创 2020-04-13 23:51:04 · 690 阅读 · 0 评论 -
【数据结构与算法】归并排序
你可以在 https://visualgo.net/zh/sorting 的 MER 标签中看到归并排序的动画。归并排序:时间复杂度:O(nlogn)空间复杂度:O(n)基本思想:分治思想。8 6 2 3 1 5 7 4分:8 6 2 3 | 1 5 7 4分:8 6 | 2 3 | 1 5 | 7 4分:8 | 6 | 2 | 3 | 1 | 5 | 7 | 4并:8 | 6...原创 2020-04-13 18:22:27 · 192 阅读 · 0 评论 -
【数据结构与算法】插入排序
插入排序:时间复杂度:O(n^2)空间复杂度:O(1)性能测试:用选择排序做对比。10k 个随机数字排序:插入排序 : 0.251472 s插入排序优化版 : 0.076234 s选择排序 : 0.114651 s10k 个接近有序数字排序:插入排序 : 0.007583 s插入排序...原创 2020-04-12 18:37:58 · 181 阅读 · 0 评论 -
【数据结构与算法】选择排序
选择排序:时间复杂度:O(n^2)空间复杂度:O(1)性能测试:和冒泡排序对比:10k 个随机数字排序:选择排序 : 0.109496 s冒泡排序优化版 : 0.432141 s10k 个接近有序数字排序:选择排序 : 0.112428 s冒泡排序优化版 : 0.018859 s基本思路:每...原创 2020-04-12 18:20:23 · 210 阅读 · 0 评论 -
【数据结构与算法】冒泡排序
冒泡排序:时间复杂度:O(n^2)空间复杂度:O(1)测试:10k 个随机数字排序:可以看到速度不分上下。冒泡排序 : 0.411331 s冒泡排序优化1 : 0.428745 s冒泡排序优化2 : 0.416507 s10k 个接近有序数字排序:可以看到优化版的是速度快了一些。冒泡排序 : 0.115256 s冒泡排序优化1 ...原创 2020-04-12 18:10:36 · 231 阅读 · 0 评论