能编译 能运行 但是运算结果不对,不知道算法那儿出问题了?求高手指点,谢谢。
public class B
{
public int i,j,t;
public void myFun(int a[])
{
for(i=0;i<a.length;i++)
for(j=0;j<a.length-1;j++)
{
{
if(a[j]>a[j+1])
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
public static void main(String args[])
{
B NewB=new B();
int [] intArrage={12,31,5,64,36,456,78,51,98,55};
NewB.myFun(intArrage);
for(int g=0;g<intArrage.length;g++)
{
//System.out.println(" ");
System.out.println(intArrage[g]);
}
}
}
[解决办法]
第一层的循环都没有用,本来应该是冒泡排序吧。
for(i=0;i<a.length;i++) for(j=0;j<a.length-1;j++) { { if(a[j]>a[j+1])t=a[j]; a[j]=a[j+1]; a[j+1]=t; }