【发布时间】:2015-02-14 04:43:20
【问题描述】:
我目前正在处理我的冒泡和选择排序,但遇到了几个问题。我从几个朋友那里得到了帮助,现在我一个人被困住了。我已经有了冒泡排序,所以我将以下代码带入了我的选择代码中。但是选择部分有不同的算法。
import java.util.Arrays;
import java.io.*;
public class SelectionSort
{
int a[];
int n;
public static void main(String[] args)
{
int array[] = { 5,3,9,7,1,8 };
System.out.println(""+Arrays.toString(Sort(array)));
}
public static int[] Sort(int[] arr)
{
int t, min;
for(int i=0;i<n-1;i++)
{
min = i;
for(int j=i+1;j<n;j++)
{
if(a[min]>a[j])
min = j;
}
if(min!=i)
{
t = a[min];
a[min] = a[i];
a[i] = t;
}
System.out.println(""+Arrays.toString(arr));
}
return arr;
}
}
气泡代码完美运行,我还必须输出整个代码中发生的每一个更改。
[3, 5, 7, 1, 8, 9]
[3, 5, 1, 7, 8, 9]
[3, 1, 5, 7, 8, 9]
[1, 3, 5, 7, 8, 9]
[1, 3, 5, 7, 8, 9]
[1, 3, 5, 7, 8, 9]
提前感谢任何帮助我的人!
【问题讨论】:
-
你还没有真正问过问题
-
如何修复我的代码,这不是一个问题吗?
-
@tshes 你必须提出一个重点明确的问题!仅仅要求修复你的代码不是很好,对吧?我们需要更多信息,例如实际出了什么问题,您尝试过什么。
-
抱歉显得粗鲁,我只是担心我的代码。我试图更改代码,我问了一个朋友,他说我没有声明变量,但我有。我的总体问题是为什么它不能编译,它给了我在冒泡排序中没有收到的错误。
-
好吧,一开始你的朋友是对的,你没有给“n”一个值,但你却把它用作循环边界。可能想要解决这个问题,您的代码可能会停止抛出错误
标签: java bubble-sort selection-sort