黑马程序员技术交流社区
标题:
冒泡排序的问题
[打印本页]
作者:
JYcainiao
时间:
2015-10-8 22:55
标题:
冒泡排序的问题
本帖最后由 JYcainiao 于 2015-10-8 22:59 编辑
// 定义一个函数 用来实现数组的冒泡排序 从小到大
class paixuArr
{
public static void maopaoArr(int[] arr)
{
for (int x=0; x<arr.length; x++)
{
for (int y=1; y<arr.length-x-1; y++)
//好脑残啊 这里y怎么会等于1呢,应该是从0开始啊 郁闷死了
{
if (arr[y]>arr[y+1])
{
int temp= arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
public static void bianliArr(int[] arr)
{
System.out.print("[");
for (int x=0;x<arr.length ;x++ )
{
if (x<arr.length-1)
System.out.print(arr[x]+",");
else
System.out.print(arr[x]);
}
System.out.print("]");
}
public static void main(String[] args)
{
int[] arr=new int[]{8,9,7,5,4,8,9,10};
//
bianliArr(arr); //打印一遍 原数组
maopaoArr(arr); //进行冒泡排序
bianliArr(arr); //打印排序后的数组
}
}
/*
大神帮我看下有哪一点错了 郁闷死了
问题已经找到 都是粗心犯的错啊
*/
作者:
cuijinghao
时间:
2015-10-8 23:04
拒绝粗心,关爱身心健康
作者:
孔曰承让
时间:
2015-10-8 23:55
细心是首要
作者:
Rzzz
时间:
2015-10-9 00:07
冒泡排序比较的是相邻的两个数,你第一次取出的数是外层的循环的数.你比较的话就从第二个数开始取数比较..
作者:
wokua
时间:
2015-10-9 01:12
我粗心也出过好多次错了
作者:
学不死往死学
时间:
2015-10-9 07:18
给力哦.赞
作者:
YaYa
时间:
2015-10-9 09:38
我懒得记冒泡 - - 选择比较好记
作者:
LLLLL
时间:
2015-10-9 21:15
for (int x=0; x<arr.length-1; x++) //这里也应该在-1.减少最后一个元素跟自己在进行比较
{
for (int y=1; y<arr.length-x-1; y++)
{
if (arr[y]>arr[y+1])
{
int temp= arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2