当前位置:网站首页>选择排序
选择排序
2020-11-08 18:38:00 【程序猿欧文】
选择排序算法的原理是找到数组中最小的元素,然后将它和数组第一个元素交换,接着在剩下的元素中找到最小的元素,接着和数组第二个元素交换,以此类推,直到将所有元素排序完毕
简单实现如下:
1 package 选择排序; 2 3 public class DemoMain { 4 public static void main(String[] args) { 5 Integer[] a = {5, 2, 6, 3, 4, 7}; 6 sort(a); 7 System.out.println(isSorted(a)); 8 show(a); 9 }10 11 /**12 * 排序13 * @param a 排序的数组14 */15 public static void sort(Comparable[] a) {16 for (int i = 0; i < a.length - 1; i++) {17 //获取当前要交换元素的下标18 int index = i;19 //找到最小的元素,将下标赋值给index20 for (int j = i + 1; j < a.length; j++) {21 if (less(a[index], a[j])) {22 index = j;23 }24 }25 //传递要交换的元素的下标i和最小值的下标index26 exch(a, i, index);27 }28 }29 30 /**31 * 比较大小,v > w的值大于032 * 使用compareTo是因为引用类型实现了Comparable接口33 * @param v 排序方法中传递的参数134 * @param w35 * @return 返回判断结果36 */37 private static b.........
版权声明
本文为[程序猿欧文]所创,转载请带上原文链接,感谢
https://my.oschina.net/mikeowen/blog/4708302
边栏推荐
猜你喜欢
Dynamic relu: Microsoft's refreshing device may be the best relu improvement | ECCV 2020
CountDownLatch 瞬间炸裂!同基于 AQS,凭什么 CyclicBarrier 可以这么秀?
Exercise 5
总结: 10月海外DeFi新项目,更多资管策略来了!
SQL 速查
第五章编程题
构建者模式(Builder pattern)
Python 列表的11个重要操作
Dynamic ReLU:微软推出提点神器,可能是最好的ReLU改进 | ECCV 2020
IT industry salary has been far ahead! Ten years later, is the programmer still a high paying profession?
随机推荐
LiteOS-消息队列-实战
Recurrence of Apache kylin Remote Code Execution Vulnerability (cve-2020-1956)
One minute comprehensive understanding of forsage smart contract global shared Ethereum matrix plan
python开发qt程序读取图片的简单流程
Function classification big PK! How to use sigmoid and softmax respectively?
MongoDB增删改查操作
聊聊Go代码覆盖率技术与最佳实践
Part I - Chapter 1 Overview
Tencent: Although Ali's Taichung is good, it is not omnipotent!
Simulink中封装子系统
Hello world of rabbitmq
VirtualBox install centos7
CountDownLatch 瞬间炸裂!同基于 AQS,凭什么 CyclicBarrier 可以这么秀?
Swagger介绍和应用
awk实现类sql的join操作
PAT_甲级_1056 Mice and Rice
SQL 速查
MongoDB数据库
Liteos message queuing actual combat
Design by contract (DBC) and its application in C language