java编写程序,定义一个2行10列的数组,将数组第一行的数据从小到大排列,第二行数据从大到

 我来答
Xmaples
2013-04-22 · 超过51用户采纳过TA的回答
知道小有建树答主
回答量:118
采纳率:0%
帮助的人:104万
展开全部
public static void main(String[] args){
final int row = 2;
final int col = 10;
int[][] a = new int[row][col];
// 建一个用时间做种子的随机器
Random rand = new Random(System.nanoTime());
// 随机初始化数组
for (int i = 0; i < row; ++i) {
for (int j = 0; j < col; ++j) {
a[i][j] = rand.nextInt();
} // end for
} // end for
// 升序排列第一行
Arrays.sort(a[0]);
// 没有直接的降序函数可供调用
// 先升序排列第二行
Arrays.sort(a[1]);
// 再交换第二行中的对应元素即为降序
int temp;
final int maxIndex = a[1].length - 1; // 第二列的最大索引
for (int i = 0; i <= maxIndex / 2; ++i) {
temp = a[1][i];
a[1][i] = a[1][maxIndex - i];
a[1][maxIndex - i] = temp;
} // end for
System.out.println(Arrays.toString(a[0]));
System.out.println(Arrays.toString(a[1]));
}

你可以自己初始化数组,这里初始化为随机数是为了测试

百度网友a76627d
2013-04-22 · TA获得超过101个赞
知道小有建树答主
回答量:203
采纳率:100%
帮助的人:119万
展开全部
// 冒泡排序, 每次冒泡一个最大的到后面
static void bubbleSort(int[] array) {
for (int j = 0; j < array.length - 1; j++) {
for (int i = 0; i < array.length - 1 - j; i++) {
if (array[i] > array[i + 1]) {
swap(array, i, i + 1);
}
}
}
}

// 选择排序, 每次选择一个最小的换到前面
static void selectSort(int[] array) {
for (int j = 0; j < array.length - 1; j++) {
for (int i = j; i < array.length; i++) {
if (array[i] < array[j]) {
swap(array, i, j);
}
}
}
}
自己传参数进去第一个方法降序,第二个方法升序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
secretwithmne
2017-08-02 · TA获得超过206个赞
知道小有建树答主
回答量:252
采纳率:76%
帮助的人:73.9万
展开全部

可以使用集合吗?

public  static void main(String[] args) {

    int[][] numbers = {
                    {1,2},
                    {3,4},
                    {5,6},
                    {7,8},
                    {9,10}};
    int len = numbers.length;
    Integer[] front = new Integer[len];
    Integer[] later = new Integer[len];
    int[] itemNums;
    for(int i = 0; i < numbers.length; i++){
        itemNums = numbers[i];
        front[i] = itemNums[0];
        later[i] = itemNums[1];
    }
    Arrays.sort(front);
    Arrays.sort(later, new Comparator<Integer>(){
        @Override
        public int compare(Integer o1, Integer o2) {
            return o2 < o1 ? 1 : (o2 == o1 ? 0 : -1);
        }
    });
    for(int i = 0; i < numbers.length; i++){
        numbers[i][0] = front[i];
        numbers[i][1] = later[i];
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-04-22
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式