博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java数据结构之排序
阅读量:4965 次
发布时间:2019-06-12

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

1、冒泡排序:时间复杂度为O(n2)

假设是由小到大排序:相邻两个数之间进行比较,较大的数在后面。一次比较过后最大的数排在最后面

如:40、8、15、18、12一次排序后为:8、15、18、12、40依次排好直到由小到大拍好

 

for(int i = 0;i < n-i; i++){   for(int j = 0;j < n-1-i;j++){      //最后几位已经排好的就不需要再排序了       if(a[j] > a[j+1]){           k= a[j];           a[j] = a[j+1];           a[j+1] = k;       }    }  }

2、选择排序:时间复杂度为O(n2)

假设是由小到大的排序:每次选出排序一次中最小的数放在第一位

如:3、4、1、5、2一次排序后为:1、4、3、5、2

 

for(int i=0;i
a[j]){ k= a[i]; a[i] = a[j]; a[j] = k; } }}

 3、插入排序:

假设是由小到大的排序:每次排序某个数与之前的数进行比较,若小于则插在其前直到大于前面的数

for(int i =1;i < n; i++){    int j = i-1;    int k = a[i];    while(a[i] < a[j]&&j >= 0){         a[j+1] = a[j];          j--;    }    a[j] = k;}

 

转载于:https://www.cnblogs.com/sker/p/5782040.html

你可能感兴趣的文章
MySQL数据库服务器逐渐变慢分析与解决
查看>>
C#学习-面向对象语言都有类
查看>>
故宫和雪
查看>>
易错java知识点总结(持续更新)
查看>>
01 基本数据类型
查看>>
06 文件处理
查看>>
大二暑假周进度总结02
查看>>
多线程和包
查看>>
.net实例:Asp.net把UTF-8编码转换为GB2312编码
查看>>
php foreach 语法的遍历来源数组如果不是一个有效数组php会出现错误警告 Invalid argument supplied for foreach()...
查看>>
XML实体引用
查看>>
Spark实战
查看>>
20169210《Linux内核原理与分析》第六周作业
查看>>
服务器架构之大厅
查看>>
@Resource和@Autowire
查看>>
Android平台Camera实时滤镜实现方法探讨(九)--磨皮算法探讨(一)
查看>>
[转]:No connection string named ‘AnyEntities’ could be found in the application config file
查看>>
谁在关心toString的性能?
查看>>
StringUtils 工具类的常用方法
查看>>
【LeetCode题解】350_两个数组的交集Ⅱ
查看>>