已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
各种排序方法复杂度总结各种排序方法复杂度总结 在 C 中 排序算法是最基本最常用的算法 不同的排序算法在不同的场景或应用中会有不同的表现 接下 来小编搜集了各种排序方法复杂度总结 欢迎查看 一 冒泡 排序 主要思路是 通过交换相邻的两个数变成小数在前大数在后 这样每次遍 历后 最大的数就 沉 到最后面了 重复 N 次即可以使数组 有序 代码实现 void bubble sort int arr int len for int i 0 i len 1 i for int j len 1 j i j if arr j arr j 1 int temp arr j arr j arr j 1 arr j 1 temp 冒泡排序改进1 在某次遍历中 如果没有数据交换 说明整个数组已经有序 因此通过设置标志位来记录此次遍历有无数据交换就可以判断 是否要继续循环 冒泡排序改进2 记录某次遍历时最后发生数据交换的位置 这个位置之后的 数据显然已经有序 因此设置标志位记录每次遍历中最后发生 数据交换的位置可以确定下次循环的范围 二 直接插入排序 主要思路是 每次将一个待排序的数组元素 插入到前面已排序的序列中 这个元素应该在的位置 直到全部数据插入完成 类似扑克牌 洗牌过程 代码实现 void sort int arr int len for int i 1 i len i int j i 1 int k arr i while j 1 k arr j arr j 1 arr j j arr j 1 k 三 直接选择排序 主要思路是 数组分成有序区和无序区 初始时整个数组都是无序区 每 次遍历都从无序区选择一个最小的元素直接放在有序区最后 直到排序完成 代码实现 void select sort int arr int len for int i 0 i len i int index i for int j i 1 j len j if arr j arr index index j if index i int temp arr i arr i arr index arr index temp 四 快速排序 主要思路是 挖坑填数 分治法 首先令 i L j R 将 a i 挖出形成打 一个坑 称 a i 为基准数 然后 j 从后向前找到一个比基准 数小的数 挖出来填到 a i 的坑中 这样 a j 就形成了一个新的 坑 再 i 从前向后找到一个比基准数大的数填到 a j 坑中 重 复进行这种挖坑填数 直到 i j 这时 a i 形成了一个新的坑 将基数填到 a i 坑中 这样 i 之前的数都比基准数小 i 之后的 数都比基准数大 因此将数组分成两部分再分别重复上述步骤 就完成了排序 代码实现 void quick sort int arr int left int right if left right int i left j right target arr left while i j while i j arr j target j if i j arr i arr j while i j arr i target i if i j arr j arr i arr i target qu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川省眉山市彭山区一中2025-2026学年高一上化学期中统考试题含解析
- 山东省邹平县黄山中学2025年物理高一第一学期期末质量跟踪监视试题含解析
- 上海丰华中学2026届高二上物理期末学业水平测试模拟试题含解析
- 陕西省西安市碑林区铁一中学2025年高二数学第一学期期末质量检测试题含解析
- 新疆沙雅县二中2025-2026学年物理高二第一学期期末学业质量监测模拟试题含解析
- 陕西省西安市第25中学2025-2026学年数学高一第一学期期末调研模拟试题含解析
- 人力资源专家手册招聘与人才管理技巧
- 医疗保险专员面试要点详解
- 小区供暖合同协议书
- 湘菜馆入股合同协议
- 催收员个人工作总结
- 第04辑一轮阅读 专题10 阅读理解说明文选标题专练15篇(满分攻略+高考真题+名校模拟)-2025届新高三英语提分培优通关练(高考真题+名校模拟)教师版
- 1、安全管理领导机构和安全管理专职机构制度
- 食品安全与质量检测技能大赛考试题及答案
- DBJ15-22-2021-T 锤击式预应力混凝土管桩工程技术规程(广东省)
- CJT 3008.3-1993 城市排水流量堰槽测量标准巴歇尔水槽
- DL-T5706-2014火力发电工程施工组织设计导则
- (高清版)JTG 5211-2024 农村公路技术状况评定标准
- GA/T 1466.3-2023智能手机型移动警务终端第3部分:检测方法
- 思想道德与法治智慧树知到期末考试答案章节答案2024年上海杉达学院
- MOOC 创业管理-江苏大学 中国大学慕课答案
评论
0/150
提交评论