博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
排序算法
阅读量:6333 次
发布时间:2019-06-22

本文共 401 字,大约阅读时间需要 1 分钟。

1 简单插入排序

假设前面的n个元素已经排好序了,然后要排下一个元素,就依次遍历比较这n个元素和该元素的大小,将该元素放在比它小和比它大的两个元素之间。n^2

2 冒泡排序

依次比较两个相邻的元素,将大的放在后面,一轮之后,最大的元素就冒泡到最后了。n^2

3 快速排序

拿出一个元素,将它和所有的元素比较,比它小的放在它前面,比它大的放在它后面,然后它最终的位置就找到了。对于它前面的元素同样处理,对于它后面的元素也同样处理。nlogn

4 堆排序

最大堆就是说,二叉树上的所有父亲顶点都比它的儿子要大。

把堆顶元素放在最后面,然后从最后面拿一个元素放在堆顶,如果它比儿子大,就把最大的儿子换下来,这样,又是一个最大堆了。nlogn

5 归并排序

5.1 归并两个已经排序好的数组

5.2 用递归实现

 

转载于:https://www.cnblogs.com/hustdc/p/6435955.html

你可能感兴趣的文章
Git使用详细教程
查看>>
Python字符串格式化
查看>>
mysql执行计划初步解读1
查看>>
Spring学习总结(2)——Spring的常用注解
查看>>
我已不是我--素养训练课
查看>>
MyBatis学习总结(9)——使用MyBatis Generator自动创建代码
查看>>
namenode ha by zookeeper
查看>>
Java 使用 Redis
查看>>
MyBatis学习总结(五)——实现关联表查询
查看>>
大型网站技术架构(一)大型网站架构演化
查看>>
Catalan数与出栈顺序个数,Java编程模拟
查看>>
Linux的shell脚本的语句,函数,检测服务,启动脚本的练习
查看>>
Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
查看>>
Java注释模板
查看>>
[UOJ86]mx的组合数——NTT+数位DP+原根与指标+卢卡斯定理
查看>>
Spring学习详解(1)——Spring入门详解
查看>>
大型网站技术架构(六)网站的伸缩性架构
查看>>
java 线程池工作原理
查看>>
swiper的基础使用(十一)
查看>>
动态追踪技术(三):trace your kernel functions!
查看>>