黑马程序员技术交流社区
标题:
请大神指教,卡住了.
[打印本页]
作者:
蓁蓁丶
时间:
2016-3-8 17:43
标题:
请大神指教,卡住了.
public static void main(String[] args) {
int[]arr ={12,32,2,43,56};
maopao(arr);
}
public static void maopao(int[]arr) {
for (int i = 0; i < arr.length-1; i++) {
for (int j = 0; j < arr.length-1-i; j++) {
if(arr[j] > arr[j+1])
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
public static void ask(int[]arr) {
System.out.println(arr[j]+" ");
}
}
作者:
木小乐
时间:
2016-3-8 17:55
本帖最后由 木小乐 于 2016-3-8 18:05 编辑
/*
利用冒泡排序法,将数组中数值进行大小排序
原理: 在冒泡排序过程中,不断地比较数组中相邻的两个元素,较小者上浮,较大者下沉,整个过程和水中气泡上升类似
1..从第一个元素开始,将相邻的两个元素依次进行比较,直到最后两个元素完成比较.如果前一个比后一个大,交换位置,第一步完成后,最后一个元素就是最大的.
2..除了最后元素,将剩余的元素进行两两比较,重复第一步,这样倒数第二位就是第二大的元素.
3..重复以上步骤,直到没有元素需要比较为止
*/
class Test_ArrayBubble {
public static void main(String[] args) {
int[] arr = {25,24,12,76,101,96,28};
bubbleSort(arr);
printArray(arr);
}
//遍历所有元素
//明确返回值类型 只是遍历元素,无须返回值 选用void
//明确参数列表 int[] arr
public static void printArray(int[] arr) {
for (int i = 0;i < arr.length ;i++ ) {
System.out.print(arr[i] + " ");
}
}
//冒泡法排序数组
//明确返回值类型 排序,不需返回值 选用void
//明确参数列表 int[] arr
public static void bubbleSort(int[] arr) {
for (int i = 0;i < arr.length -1 ;i++ ) {
for (int j =0;j < arr.length -i -1 ;j++ ) {
if (arr[j] > arr[j +1]) {
int temp = arr[j];
arr[j] = arr[j +1];
arr[j +1] = temp;
}
}
}
}
}
复制代码
这是我自己学冒泡的时候写的,你可以看看
作者:
woshihuoye
时间:
2016-3-8 18:35
public static void ask(int[]arr) {
System.out.println(arr[j]+" ");
这个函数错了。ask(int[] arr)的括号中,函数接收的参数类型是int型的数组。打印数组的值需要遍历。
因此应该
public static void ask(int[]arr) {
for(int x = 0;x<arr.length();x++)
{
System.out.printlnIn(arr[x]);
}
}
作者:
luomoss
时间:
2016-3-8 21:30
第一,打印数组打印数组的值需要遍历,一个个数打印
第二,你没有调用打印函数,
打印数组:
public static void ask(int[] arr){
for (int i = 0;i < arr.length ;i++ ) {
System.out.print(arr[i] + " ");
}
}
作者:
萌萌的_O30IH
时间:
2016-3-8 21:51
看不出来
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2