八大排序算法之选择排序
来源:互联网 发布:2015淘宝双十一销售额 编辑:程序博客网 时间:2024/05/21 19:30
/** * Created by leixingbang on 2017/9/25. * 选择排序主要思想是将数组拆分为两部分,一部分是已经排序的新数组和剩下的尚未排序的子数组 * 每次选择,都从尚未排序的子数组中找出最小的数字,添加到已经排序的新数组分。 * **************************定理*************** * 对于长度为n的选择排序需要 * (1)N*N/2次比较:(N-1,N-2,N-3.....1)累加求和 * (2)N次交换:每次从尚未排序的子数组中找到最小的,进行交换。 */public class MySelectSort2 { public static int []selectSort(int []arr) { for (int i = 0; i < arr.length; i++) {//从0到i是已经排序的子数组部分 int smallest = arr[i]; int smallestIndex = i; for (int j = i + 1; j < arr.length; j++) {//从i+1到arr.length是尚未排序的子数组部分 if (arr[j] < smallest) { smallest = arr[j]; smallestIndex = j; } } int temp = arr[i]; arr[i] = smallest; arr[smallestIndex] = temp; } return arr; } public static void main(String a[]) { int[] arr1 = {10, 34, 2, 56, 7, 67, 88, 42}; int[] arr2 = selectSort(arr1); for (int i : arr2) { System.out.print(i); System.out.print(", "); } }}
阅读全文
0 0
- 八大排序算法之选择排序
- 八大排序算法之选择排序
- 八大排序算法之简单选择排序
- 八大排序算法之二元选择排序
- 八大排序算法之直接选择排序
- 八大排序算法之选择排序
- 八大排序算法之选择排序
- 八大排序算法之选择排序
- Java八大排序算法之选择排序
- 八大排序算法之选择排序
- 八大排序算法之---冒泡和选择
- 八大排序算法 之 冒泡排序VS选择排序
- 八大排序之选择排序
- 八大排序之选择排序
- 八大排序算法之简单选择排序法
- 八大排序算法之-选择排序 java代码
- 八大排序算法之(四)选择排序
- 八大排序 --选择排序 之 【堆排序】
- laravel框架 安装使用配置
- 加载所有配置文件
- BZOJ 1082 栅栏 (二分 剪枝搜索)
- 文章标题
- codeforces 855B DP
- 八大排序算法之选择排序
- linux命令简单介绍以及使用
- 【Elasticsearch】1环境
- 百分比布局
- JavaScript的NaN为什么不等于NaN
- python之if语句
- 多线程(三)--多线程间通信
- codevs 3732 NOIP2014 解方程 解题报告
- For Fun:使用 IDA 调试 iOS 程序的步骤