数据结构_05简单排序

简单排序
  1. comparable接口介绍
    某个类实现comparable接口后,我们就可以直接对这个类进行比较了

  2. 冒泡排序
    1. 注意所说的第一次冒泡,指的是第一轮结束后的结果,也就是最大值被放在最后,而不是第一轮中交换一次后的结果

  3. 选择排序

  4. 插入排序

高级排序
  1. 希尔排序——选定一个增长量,h ,按照增长量对数据进行分组,对分好组的每一组数据使用插入排序,h=h/2,多次循环
  2. 归并排序
    1. 递归
    2. 时间复杂度为(n*log2(n))——log2(n)是分治,合并的次数
    在这里插入图片描述
    3. 辅助数组(与原始数组一样大),所以使用额外的内存空间,空间复杂度提升
  3. 快速排序
  4. 快排与归并排序的区别
    1. 快排与归并都用到了分治思想,将一个数组分为两个部分,进行独立的排序(这里是指快排第一轮排序完成时,即a[0]已成为分割点时)
    2. 归并排序将两个子数组分别排序,并将有序的子数组归并从而将整个数组排序
    快排将两个子数组排完序后,整个数组已经有序不需要归并
    3. 归并排序分组是完全等分的,而快排不是,切分的两个部分完全取决于数组的内容
稳定性
  1. 稳定性的意义:
    1. 第一次的排完序的结果在接下来的排序中依然有所体现
    2. 节省了内存开销,省去了无意义的交换步骤
  2. 只能在多次排序中体现,这里的多次排序指的是,按照不同的排序标准得到不同的排序结果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值