选择排序小总结。
来源:互联网 发布:打碟软件 编辑:程序博客网 时间:2024/05/16 19:30
/*
需求:选择排序 (从小到大)
思路:
1, 假设所需排序的数据(以整型为例)存储在数组中,选择排序是对这 n-i 个数据进行特定形式的比较,从而得出一定的次序(从小到大,或从大到小)。
从n-i个记录中选出关键字最小的记录,并和第i(0<=i<arr.length) 个 记录进行交换。
2, 定义一个排序功能用以比较数组中数据的大小。
①---定义一个min变量,用于存放数组中下标为i的数组元素的值。
②---然后将arr[min]与其后的数组元素进行大小比较,
程序第一次执行时,即arr[min]=arr[0];
若arr[min]大于arr[1],则执行 min=1; 此时arr[min]存放的数据是相对之前min=0; 时的值小。
重复②,循环结束后 此时若min的值不等于i;则进行数值交换。
3,定义一个交换数据的功能,用于交换数据。
4,定义一个打印数组的功能,用于打印数组。
*/
class SortDemo{//打印数组功能public static void printArray(int[] arr) {System.out.print("[");for(int i=0;i<arr.length;i++){if(i!=arr.length-1)System.out.print(arr[i]+",");elseSystem.out.println(arr[i]+"]");}}//交换数据public static void swap(int []arr,int a,int b) {int temp=arr[a];arr[a]=arr[b];arr[b]=temp;}//排序功能public static void selectSort(int []arr) {for(int x=0;x<arr.length-1;x++){int min=x;for(int y=x+1;y<arr.length;y++){if(arr[min]>arr[y])min=y;}if(x!=min)swap(arr,min,x);}}public static void main(String[]args){int [] arr={9,5,43,78,14,57,7};printArray(arr); sort(arr);printArray(arr);}}
/*
总结:
方法调用的灵活性,传参数时不用带类型符号。
*/
- 选择排序小总结。
- 冒泡、选择、插入排序算法小总结
- 排序总结---选择排序
- 选择排序小谈
- 选择排序小Demo
- 直接选择排序总结
- 选择排序总结
- 【排序算法总结】选择排序
- 选择、插入排序小程序
- 【冒泡排序、选择排序、插入排序总结】
- 选择排序、插入排序、希尔排序总结
- 冒泡排序、选择排序、插入排序总结
- 小白排序之选择排序
- 排序算法小总结
- 排序算法小总结
- 【排序总结--冒泡、选择、交换】
- 简单选择排序算法总结
- JavaSE第一阶段总结选择排序
- 贪财的富翁
- 开始 继续 停止
- CMakeLists.txt文件写法
- java动态代理
- IOS 的属性剖析(点语法操作)
- 选择排序小总结。
- 如何解决 linux 操作系统显示中文乱码问题?
- android 颜色
- 结交“混世魔猴”
- 为什么负逻辑可以抗串模干扰
- POJ 1258 lightblueme Agri Net angry!89次的失误终于得到最后的成功
- JAVA代码(三)
- HTTP与HTTPS区别
- C++ 对象切割(Object slicing )与虚拟函式 [大三TJB_708]