给一个二维数组inArr[ ][ ],写一个方法获取每一列的最小值,输出到一个一维数组outArr[ ]中。
如:inArr[ ][ ]={{1,8,3},{6,5}},则输出outArr[ ] = {1,5,3}public class Test {
public static void main(String[] args) {
int inArr[][]={{1,8,3},{6,5}};
int outArr[]=new int[inArr.length];
for (int i = 0; i < inArr.length; i++) {
for (int j = 0; j <inArr.length; j++) {
if(i==1 && j==1){
break;
}
outArr[i]=inArr[i][j]<inArr[i][j+1]?inArr[i][j]:inArr[i][j+1];
System.out.println(outArr[i]);



}
}
}
}
这样写对不对?????

解决方案 »

  1.   

    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;public class aa {    public static void main(String[] args) {
            int inArr[][] = {{1, 8, 3}, {6, 5}};
            int maxLength = getMaxLength(inArr);
            List<Integer []> list1=new ArrayList<Integer []>();
            List<Integer> list = new ArrayList<Integer>();
            for (int j = 0; j < maxLength; j++) {
                for (int i = 0; i < inArr.length; i++) {
                    int tempLength=inArr[i].length;
                    if((j+1)>tempLength)
                        continue;
                    list.add(inArr[i][j]);
                }
                Integer temp[]=(Integer[]) list.toArray(new Integer[list.size()]);
                list= new ArrayList<Integer>();
                list1.add(temp);
            }
            int temp[]=new int[maxLength];
            int c=0;
            for(int i=0;i<list1.size();i++){
               Integer [] obj=(Integer [])list1.get(i);
               Arrays.sort(obj);
               for(int j=0;j<obj.length;j++){
                   System.out.print(obj[j]);
               }
               temp[c++]=obj[0];
               System.out.println();
            }
            System.out.println(temp[0]+","+temp[1]+","+temp[2]);
        }    public static int getMaxLength(int array[][]) {
            int length = 0;
            for (int i = 0; i < array.length; i++) {
                length = length < array[i].length ? length = array[i].length : length;
            }
            return length;
        }
    }
    华为外包