站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题从小到大排列出10个数字 快救我,马上要交,新手请教

从小到大排列出10个数字 快救我,马上要交,新手请教

摘要: 从小到大排列出10个数字 快救我,马上要交,新手请教


一个int数组,有10个大大小小的数字,把他从小到大排出来。
要求:在没排序前,先找到数组里最小的一个数跟第一个数调换位置,在剩下在9个数字中在找到他们间最小的数又跟第一个调换位置依次类推,只到排完为止。
我要的就是以这种方法排序,我不知道怎么该怎么写,哪位能帮帮忙,谢谢!!!

最好能帮我写出来


int num[]={4,6,23,45,32,5,3,56,34,2};
for(int i=0;i-#60;num.length;i++){
for(int j=i+1;j-#60;num.length;j++){
if(num[j]-#60;num[i]){
num[i]=num[i]+num[j];
num[j]=num[i]-num[j];
num[i]=num[i]-num[j];
}
}
System.out.println(num[i]);
}


public class sort
{
public void sortnumber(int a[])
{
int min=a[0],mini=0;
int i=0,j=0;
for(i=0;i-#60;9;i++)
{
for(j=i+1;j-#60;10;j++)
{
if(a[j]-#60;min)
{
min=a[j];
mini=j;
}
}
a[mini]=a[i];
a[i]=min;
min=a[i+1];
mini=i+1;
}
for(i=0;i-#60;10;i++)
{
System.out.println(-#34;-#34;+a[i]);
}
}
public static void main(String args[])
{
int a[]={5,3,7,1,2,9,4,6,0,8};
new sort().sortnumber(a);
}
}


不用冒泡法啊!!就是按我上面说的那样搞,
老师说只用一个FOR循环就可以搞定


int num[]={4,6,23,45,32,5,3,56,34,2};
Arrays.sort(num);
for(int i=0;i-#60;num.length;i++){
System.out.println(num[i]);
}
看这多简单...一句就排序搞定


你上面说的方法就是冒泡法,按你的方法必须是两个for循环,第一个循环是从1-10,每次寻找出剩下的最小的数,第二个循环就是寻找这个最小的数


就是 楼主说的方法就是冒泡法!


不是冒泡
是选择排序


public void sort(){
int outer,inner;
int min;
for(outer=0;outer-#60;nElems-1;outer++){
min=outer;
for(inner=outer+1;inner-#60;nElems;inner++){
if(arr[inner]-#60;arr[min]){
min=inner;
swap(outer,min);
}
}
}
}
public void swap(int dex1,int dex2){
int tep=arr[dex1];
arr[dex1]=arr[dex2];
arr[dex2]=tep;
}


gefengxztg(戈峰)
不是冒泡
是选择排序
--------------
赞成


↑返回目录
前一篇: 高分求一个比较菜的问题的解决方法,请好心人进来看看。在线等。
后一篇: 有关java3d的一点问题,请高手赐教 给50分!