【动手写排序】选择排序
2015-07-03 20:40
218 查看
import org.junit.Test;
public class SelectSort {
public void sort(int[] arr){
for(int i=arr.length-1;i>0;i--){
int min=0;
for(int j=1;j<=i;j++){
if(arr[j]>arr[min])
min=j;
}
swap(arr,i,min);
}
}
public void swap(int[] arr,int i,int j){
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
@Test
public void test(){
int[] arr={9,8,7,6,4,5,3,1,2};
// int[] arr={4};
sort(arr);
for(int i:arr){
System.out.print(i+" ");
}
}
}
public class SelectSort {
public void sort(int[] arr){
for(int i=arr.length-1;i>0;i--){
int min=0;
for(int j=1;j<=i;j++){
if(arr[j]>arr[min])
min=j;
}
swap(arr,i,min);
}
}
public void swap(int[] arr,int i,int j){
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
@Test
public void test(){
int[] arr={9,8,7,6,4,5,3,1,2};
// int[] arr={4};
sort(arr);
for(int i:arr){
System.out.print(i+" ");
}
}
}
相关文章推荐
- 各种排序算法的实现代码
- Cross compile linux kernel
- Unity-EasyTouch插件之One Finger
- 【莫比乌斯反演】关于Mobius反演与lcm的一些关系与问题简化(BZOJ 2154 crash的数字表格&&BZOJ 2693 jzptab)
- NYOJ 770 仿射密码
- 音乐播放
- 带表头的单循环链表的实现
- 深度学习-LeCun、Bengio和Hinton的联合综述(上)
- 【动手写排序】直接插入排序
- MAVEN的安装
- Delphi 简体 繁体 转换
- NYOJ 1023 还是回文
- CodeForces 363B Fence
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十二课:Cocos2D-X地图系统1-8
- 编程能力的四种境界
- ajax之前台和后台数据传输
- NYOJ 14 会场安排问题
- 【高精度】POJ1001-Exponentiation
- HTTP_5_通信数据转发程序:代理、网关、隧道
- 每天小练笔2-大数求和