欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

以比较作为主要操作的排序算法

墨初 知识笔记 121阅读

排序算法性能如何比较?

答:排序算法 的 比较 :性能的 比较 可以从以下5个方面进行分析:时间复杂度(平均情况、最好情况、最差情 【 1 】 选择 排序 、快速 排序 、希尔 排序 、堆 排序 不是稳定的 排序算法 冒泡 排序 、插入 排序 、归并 排序 和基数 排序 都是稳定的 排序算法 。

什么是选择排序?

答:而选择排序是通过对整体的选择。 其实选择排序可以看成冒泡排序的优化,因为其目的相同,只是选择排序只有在确定了最小数的前提下才进行交换, 大大减少了交换的次数。 选择排序的时间复杂度为 O (n2) 。 插入排序不是通过交换位置而是通过比较找到合适的位置插入元素来达到排序的目的。 插入排序的时间复杂度为 O (n2) 。 其实其思想是来自冒泡排序,冒泡排序是通过相邻元素的比较和交换把最小的冒泡到最顶端,而快速排序是比较和交换小数和大数,这样一来不仅把小数冒泡到上面同时也把大数沉到下面。

什么是高效排序?

答:又比如构建二叉排序树的过程,就是一个排序的过程,因此,如何进行排序,尤其是高效排序,是一个重要的课题。 排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次 序保持不变,即在原序列中,r [i]=r [j],且r [i]在r [j]之前,而在排序后的序列中,r [i]仍在r [j]之前,则称这种排 序算法是稳定的;否则称为不稳定的。 内部排序:数据元素全部放在内存中的排序。 外部排序:数据元素太多不能同时放在内存中,根据排序过程的要求不能在内外存之间移动数据的排序。 1. 选择排序---直接选择排序

什么是基数排序?

答:基数排序的思想是按照组成关键字的各个数位进行排序,它是分配排序的一种。 假如关键字是十进制数字,那么令r=10,d是所有关键字中的最大位数(位数小于d的数字,在前方补0)。 基数排序可以从最低有效位开始,也可以从最高有效位开始。 基数排序的思想是:设立r个队列,编号分别为0,1,2,3…,r-1。 首先按照最低有效位的值,将n个关键字放置到r个队列中,然后从小到大将元素收集起来,再按照次低位的值将元素放置到各个队列中,再进行收集,重复上述过程,直到收集完毕为止。 我们会在不同的场景会用到不同的排序算法,具体如何。 (后面博客会详细说到) 感谢您的阅读,如有错误,欢迎指正。 希望大家关注一波。 (谢谢) 一、 排序算法 说明 排序 的定义:对一个无序的序列进行 排序 的过程。

声明:无特别说明,转载请标明本文来源!