【数据结构】-简单选择排序Java实现
来源:互联网 发布:仙侣奇缘3 数据库密码 编辑:程序博客网 时间:2024/05/01 21:54
基本思想:每一趟在n-i+1(i=1,2,…n-1)个记录中选取关键字最小(大)的记录,并和第i个记录交换。
第一趟(i=1):从n个记录中选择最小(大)的记录,并和第1个记录交换;
第二趟(i=2):从n-1个记录中选择最小(大)的记录,并和第2个记录交换;
依次类推。
稳定性:不稳定;
时间复杂度:O(n*n);
package org.iti.algorithm;import java.util.Random;/** * * @author Tailyou * */public class ArraySort { public static void main(String[] args) { int[] array = genArray(8); System.out.println("排序前:"); printArray(array); // 选择排序 selectSort(array); System.out.println("排序后:"); printArray(array); } /** * 产生数组 * * @return */ public static int[] genArray(int length) { Random random = new Random(); int[] sort = new int[length]; for (int i = 0; i < length; i++) { sort[i] = random.nextInt(50); } return sort; } /** * 打印数组 * * @param sort */ public static void printArray(int[] sort) { for (int i = 0; i < sort.length; i++) { if (i == sort.length - 1) { System.out.println(sort[i]); } else { System.out.print(sort[i] + ","); } } } /** * 简单选择排序O(n^2) * * @param array */ public static void selectSort(int[] array) { for (int i = 0; i < array.length - 1; i++) { for (int j = i + 1; j < array.length; j++) { if (array[j] < array[i]) { int temp = array[j]; array[j] = array[i]; array[i] = temp; } } } }}
0 0
- 【数据结构】-简单选择排序Java实现
- [Java数据结构]简单排序之选择排序
- java数据结构排序之选择排序实现
- Java实现简单选择排序
- 简单选择排序--Java实现
- 简单选择排序 java实现
- Java实现简单选择排序
- java实现简单选择排序
- 简单选择排序 java实现
- Java实现简单选择排序
- JAVA数据结构:简单排序(冒泡,选择,插入)
- 数据结构----简单选择排序
- 数据结构简单选择排序
- 【排序算法】简单选择排序(java实现)
- 数据结构之选择排序的Java实现
- 【数据结构与算法】【排序】简单选择排序的代码实现
- 14. 数据结构进阶十四排序实现之简单选择排序
- Java数据结构和算法-简单排序(2-选择排序)
- Query学习之jQuery Ajax用法详解
- android学习笔记6 - Application类的使用
- adb无法使用--关掉防火墙
- 如何清晰的描述BUG? BUG的基本属性都有哪些?
- 开发音乐播放器【1】
- 【数据结构】-简单选择排序Java实现
- poj3687
- test 2.1-1
- XCode7 iOS9无法访问网络的问题
- HDU 1158 DP
- 如何跳转到appstore或其他app
- PAT Basic level practice 12
- 设计模式之七外观模式
- 系统架构师-要求