hdoj2016(java)数据的交换输出(数组交换)

数据的交换输出

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 86725    Accepted Submission(s): 32499



Problem Description
输入n(n<100)个数,找出其中最小的数,将它与最前面的数交换后输出这些数。
 

Input
输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数。n=0表示输入的结束,不做处理。
 

Output
对于每组输入数据,输出交换后的数列,每组输出占一行。
 

Sample Input
   
   
   
   
4 2 1 3 4 5 5 4 3 2 1 0
 

Sample Output
   
   
   
   
1 2 3 4 1 4 3 2 5
import java.util.*;
import java.math.*;
import java.io.*;
public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner in =new Scanner(System.in);
        while(in.hasNext())
        {
            int n;
            n=in.nextInt();
            if(n==0)
                break;
            int[] s;
            s=new int[10000];
            int min=100000;
            int b=0;
            for(int i=0;i<n;i++)
            {
                s[i]=in.nextInt();
                if(min>s[i])
                    {
                    min=s[i];
                    b=i;
                    }
            }
             s[b]=s[0];
             s[0]=min;
            for(int i=0;i<n-1;i++)
            {
                System.out.printf("%d ",s[i]);
            }
            System.out.println(s[n-1]);
        }

    }

}

你可能感兴趣的:(hdoj2016(java)数据的交换输出(数组交换))