选择排序和冒泡排序
2017-03-07 11:36
141 查看
public class Ha {
public static void main(String[] args) {
int arr[] = {2,8,0,7,3};
//选择排序
//第一次是第一个值arr[0]和后边的依次比较交换,所以y从x+1开始,把最值放到arr[0]的位置
//第二次是第二个值arr[1]和后面的依次比较交换,把第二最值放到arr[1]的位置。。。
//依次类推,第四次把第四最值放到arr[3]的位置,最后一个不用交换,所以x<arr.length-1
for(int x=0;x<arr.length-1;x++){
for(int y=x+1;y<arr.length;y++){
if(arr[x]<arr[y]){
//交换
}
}
}
//冒泡排序两两比较,把最值放到最后
//第一次arr[0]跟arr[1],然后arr[1]跟arr[2]...arr[3]跟arr[4]把最值放到最后
//第一次arr[0]跟arr[1],然后arr[1]跟arr[2]...arr[2]跟arr[3]把最值放到倒数第二位
//依次做arr.length-1次循环
for(int x=0;x<arr.length-1;x++){
for(int y=0;y<arr.length-x-1;y++){
if(arr[y]<arr[y+1]){
//交换
}
}
}
}
}
public static void main(String[] args) {
int arr[] = {2,8,0,7,3};
//选择排序
//第一次是第一个值arr[0]和后边的依次比较交换,所以y从x+1开始,把最值放到arr[0]的位置
//第二次是第二个值arr[1]和后面的依次比较交换,把第二最值放到arr[1]的位置。。。
//依次类推,第四次把第四最值放到arr[3]的位置,最后一个不用交换,所以x<arr.length-1
for(int x=0;x<arr.length-1;x++){
for(int y=x+1;y<arr.length;y++){
if(arr[x]<arr[y]){
//交换
}
}
}
//冒泡排序两两比较,把最值放到最后
//第一次arr[0]跟arr[1],然后arr[1]跟arr[2]...arr[3]跟arr[4]把最值放到最后
//第一次arr[0]跟arr[1],然后arr[1]跟arr[2]...arr[2]跟arr[3]把最值放到倒数第二位
//依次做arr.length-1次循环
for(int x=0;x<arr.length-1;x++){
for(int y=0;y<arr.length-x-1;y++){
if(arr[y]<arr[y+1]){
//交换
}
}
}
}
}
相关文章推荐
- C#的四种排序算法:冒泡排序、选择排序、插入排序和希尔排序
- 编程实现直接插入排序、希尔排序、冒泡排序、快速排序、选择排序
- 几种常见的排序算法,选择排序,冒泡排序,希尔排序,堆排序,快速排序,归并排序,基数排序的比较
- JAVA实现简单的冒泡排序与选择排序
- 插入排序 选择排序 冒泡排序 快速排序
- java选择排序与冒泡排序
- 选择排序和冒泡排序
- 排序的四种写法包括(冒泡排序,选择排序,插入排序,希尔排序)
- Java实现冒泡排序和快速排序,选择…
- day04获取数组的最值,选择排序,冒泡排序,折半查找
- 快速排序,选择排序,直接插入,冒泡排序的javascript实现
- 使用指针法对数组进行冒泡排序、选择排序、插入排序法、二分查找法
- 这是冒泡排序的变种吗? 冒泡排序和选择排序
- 排序:选择排序、冒泡排序、插入排序(day02-13.09.26)
- 黑马程序员-数组排序-选择排序与冒泡排序
- 几种基本的排序算法:选择排序、插入排序、冒泡排序
- 数组的常见操作:冒泡排序 选择排序与取最值
- 面试最基本的三种排序算法 冒泡排序 插入排序 选择排序
- C——冒泡排序、快速排序,选择排序
- 简单排序算法之插入排序、选择排序和冒泡排序