数据结构-第十章 排序
排序的目的是什么?
便于查找!
如何衡量排序算法的好坏?
时间效率
排序速度(比较次数与移动次数)
空间效率
占内存辅助空间的大小
稳定性
A和B的关键字相等,排序后A、B的先后次序保持不变,则称这种排序算法是稳定的。
按待排序记录所在位置,分为两类
内部排序
待排序记录存放在内存,排序过程不需访问外存便能完成
外部排序
参加排序的记录数量很大,排序过程需对外存进行访问
按排序过程中依据的原则,分为五类
插入排序:直接插入排序、折半插入排序、希尔排序
交换排序:冒泡排序、快速排序
选择排序:简单选择排序、堆排序
归并排序:2-路归并排序
基数排序
1.直接插入排序
时间复杂度为 O(n2),空间复杂度为 O(1),是一种稳定的排序方法
2.折半插入排序
3.希尔排序
希尔排序是不稳定排序
dk 值较大,子序列中对象较少,速度较快;
dk 值逐渐变小,子序列中对象变多,但大多数对象已基本有序,所以排序速度仍然很快。
4.冒泡排序
时间复杂度:O(n²)
空间复杂度:O(1)
冒泡排序是稳定排序
5.快速排序
6.简单选择排序
时间复杂度:O(n²)
空间复杂度:O(1)
简单选择排序是不稳定排序
7.堆排序
8.归并排序
9 基数排序
多关键字排序
转载于:https://www.cnblogs.com/wpbing/p/10161655.html
数据结构-第十章 排序相关推荐
- 输入法按照选字频率排序的C语言程序算法,算法与数据结构之选择排序(C语言)...
#include #include void SelectSort(int *a,int n);//预声明要调用的函数 int main(void) { int k; int x[]={,,,,,,, ...
- SDUT OJ 数据结构实验之排序一:一趟快排
数据结构实验之排序一:一趟快排 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descrip ...
- 数据结构 - 简单选择排序法
数据结构 - 简单选择排序法 在之前的博文里已经介绍过排序的两个基本方法: 双重循环法和冒泡排序法. 基本思想 其实上面两种方法的基本思想都是一样的: 就是将排序步骤分成两层循环, 在内层的每1个循环 ...
- SDUT 3400 数据结构实验之排序三:bucket sort
数据结构实验之排序三:bucket sort Time Limit: 150MS Memory Limit: 65536KB Submit Statistic Problem Description ...
- 数据结构实验之排序七:选课名单
数据结构实验之排序七:选课名单 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 随着学校规模 ...
- 鸿蒙轻内核M核源码分析:数据结构之任务排序链表
摘要:鸿蒙轻内核的任务排序链表,用于任务延迟到期/超时唤醒等业务场景,是一个非常重要.非常基础的数据结构. 本文会继续给读者介绍鸿蒙轻内核源码中重要的数据结构:任务排序链表TaskSortLinkAt ...
- SDUT 3399 数据结构实验之排序二:交换排序
数据结构实验之排序二:交换排序 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 冒泡排序和快 ...
- 数据结构实验之排序八:快速排序
数据结构实验之排序八:快速排序 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 给定N ...
- 数据结构实验之排序四:寻找大富翁__咳咳咳,还魂篇!!
数据结构实验之排序四:寻找大富翁 Time Limit: 200MS Memory Limit: 512KB Submit Statistic Problem Description 2015胡润 ...
最新文章
- html中空标签的有什么,HTML常用标签,什么是空标签和可替换标签
- redis的观察者模式----------发布订阅功能
- javascript删除元素节点
- Firewalld防火墙应用
- 搜狗词库爬虫(2):基础爬虫框架的运行流程
- 卷积神经网络结构可视化工具PlotNeuralNet
- 失配树(border树)
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 6丨寻找用户推荐人【难度简单】
- java ftp connect_java操作Ftp文件的一些方式(一)
- Java集合框架之四大接口、常用实现类,java基础面试笔试题
- 简单绑定要注意的问题_AX
- UML总结(对九种图的认识和如何使用Rational Rose 画图)
- iOS 链接库“libbaidumapapi.a”缺少此目标所需的一个或多个体系结构:arm64、armv7
- Android 编写测试用例
- 杭州电子科技大学ACM-1096
- OpenMV新手上路1 -- OpenMV简介、参数描述
- 第五章 图像基础(设备内容)
- c语言——直接插入排序实现(时间复杂度与空间复杂度分析)
- DSS部署-7、配置Python
- 那时本该像风一样把你忘记