摘要:
插入排序 插入排序:插入排序是在一个已经有序的小序列的基础上,一次插入一个元素。当然,刚开始这个有序的小序列只有1个元素,就是第一个元素。比较是从有序序列的末尾开始,也就是想要插入的元素和已经有序的最大者开始比起,如果比它大则直接插入在其后面,否则一直往前找直到找到它该插入的位置。如果碰见一个和插入 阅读全文
posted @ 2021-02-26 13:51
角色人生
阅读(457)
评论(0)
推荐(0)
摘要:
选择排序 选择排序是一种简单直观的排序算法。它与冒泡排序很相似,都是比较 n-1 轮,每轮都是比较 n–1–i 次,每轮找出一个最大值或最小值。 只不过,冒泡排序是将每轮找出的最值放到最右边,而选择排序是将每轮找出的最值放到最左边。并且在算法上,冒泡排序是将相邻的数进行逐个比较,以从小到大排序为例, 阅读全文
posted @ 2021-02-26 13:50
角色人生
阅读(589)
评论(0)
推荐(0)
摘要:
冒泡排序 冒泡排序:冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,我想你是不会再无聊地把他们俩交换一下的;如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相邻起来,这时候也不会交换,所以相同元素的前后顺序并 阅读全文
posted @ 2021-02-26 13:45
角色人生
阅读(476)
评论(0)
推荐(0)
摘要:
各种排序算法什么时候有最好情况、最坏情况(尤其是快排) 直接插入排序:最坏情况需要比较O(n^2)次(n(n - 1)/2次)(有争议)。 简单选择排序:无论是否最坏都需要O(n^2)次(n(n - 1)/2次)。 冒泡排序:需要比较O(n^2)次(n(n - 1)/2次),即序列逆序的情况。 堆排 阅读全文
posted @ 2021-02-26 13:41
角色人生
阅读(2257)
评论(0)
推荐(0)
摘要:
各种排序算法的时间空间复杂度、稳定性 一、排序算法分类: 二、排序算法比较: 注: 1、归并排序可以通过手摇算法将空间复杂度降到O(1),但是时间复杂度会提高。 2、 基数排序时间复杂度为O(N*M),其中N为数据个数,M为数据位数。 三、 辅助记忆 1、时间复杂度记忆 冒泡、选择、直接 排序需要两 阅读全文
posted @ 2021-02-26 13:40
角色人生
阅读(617)
评论(0)
推荐(0)
浙公网安备 33010602011771号