*8.27(列排序)用下面的方法实现一个二维数组中的列排序。返回新数组,且原数组保持不变。编写一个测试程序,提示用户输入一个3*3的double型矩阵,显示一个排好的矩阵

  • 题目
    • 题目描述与运行示例
    • 破题
  • 代码

题目

题目描述与运行示例

8.26(列排序)用下面的方法实现一个二维数组中的列排序,返回新数组,且原数组保持不变:
public static double[][] sortColumns(double[][] m)
编写一个测试程序,提示用户输入一个3
3的double型矩阵,显示一个排好的矩阵
下面是一个运行示例:

Enter a 3-by-3 matrix row by row:
0.15 0.875 0.375
0.55 0.005 0.225
0.30 0.12 0.4The column-sorted array is
0.15 0.005 0.225
0.3 0.12 0.375
0.55 0.875 0.4

破题

  1. 主方法:声明一个3*3长度的矩阵
  2. 主方法:输出提示语句,使用循环获取矩阵元素
  3. 主方法:调用sortRows方法
  4. 主方法:输出
  5. sortRows方法:遍历数组,每列元素进行比较
  6. sortRows方法:返回排序好的数组

代码

import java.util.Arrays;
import java.util.Scanner;public class Test8_27 {public static void main(String[] args) {//1. 主方法:声明一个3*3长度的矩阵double[][] array = new double[3][3];//2. 主方法:输出提示语句,使用循环获取矩阵元素Scanner input = new Scanner(System.in);System.out.println("Enter a 3-by-3 matrix row by row:");for (int i = 0 ; i < 3 ; i++){for (int j = 0 ; j < 3 ; j++){array[i][j] = input.nextDouble();}}//3. 主方法:调用sortRows方法double[][] result = new double[3][3];result = sortColumns(array);//4. 主方法:输出System.out.println();System.out.println("The column-sorted array is");for (int i = 0 ; i < 3 ; i++){for (int j = 0 ; j < 3 ; j++){System.out.print(result[i][j] + " ");}System.out.println();}}public static double[][] sortColumns(double[][] m){//5. sortRows方法:遍历数组,每列元素进行比较double[] temp = new double[m.length];for (int j = 0 ; j < m[0].length ; j++){for (int i = 0 ; i < m.length ; i++){temp[i] = m[i][j];}Arrays.sort(temp);for (int i = 0 ; i < m.length ; i++){m[i][j] = temp[i];}}//6. sortRows方法:返回排序好的数组return m;}
}

Java黑皮书课后题第8章:*8.27(列排序)用下面的方法实现一个二维数组中的列排序。返回新数组,且原数组保持不变。编写一个测试程序,提示用户输入一个3*3的double型矩阵,显示一个排好的矩阵相关推荐

  1. Java黑皮书课后题第8章:*8.34(几何:最右下角的点)在计算几何中经常需要从一个点集中找到最右下角的点。编写一个测试程序,提示用户输入6个点的坐标,然后显示最右下角的点

    *8.34(几何:最右下角的点)在计算几何中经常需要从一个点集中找到最右下角的点.编写一个测试程序,提示用户输入6个点的坐标,然后显示最右下角的点 题目 题目描述与运行示例 破题 代码 题目 题目描述 ...

  2. Java黑皮书课后题第6章:*6.38(生成随机字符)使用程序清单6-10 RandomCharacter中的方法,打印100个大写字母及100个一位数字,每行打印10个

    6.38(生成随机字符)使用程序清单6-10 RandomCharacter中的方法,打印100个大写字母及100个一位数字,每行打印10个 题目 题目描述 程序清单6-10 破题 代码 运行实例 题 ...

  3. Java黑皮书课后题第9章:**9.12(几何:交点)假设两条线段相交。第一条线段的两个端点是(x1, y1)和(x2, y2),第二条线段的两个端点是(x3, y3)和(x4, y4)

    Java黑皮书课后题第9章:**9.12(几何:交点)假设两条线段相交.第一条线段的两个端点是(x1, y1)和(x2, y2),第二条线段的两个端点是(x3, y3)和(x4, y4) 题目 破题 ...

  4. Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类

    Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类 题目 破题 代码 Test10 Test11_LinearEquat ...

  5. Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类

    Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类 题目 破题 代码 Test10 Test10_QuadraticEquatio ...

  6. Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含……。编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间

    Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含--.编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间 题目 破题 代码 Test6 ...

  7. Java黑皮书课后题第3章:*3.32(几何:点的位置)给定一个从点p0(x0,y0)到p1(x1,y1)的有向线段,可以用以下公式判定定点p2(x2, y2)是在线段的左侧、右侧,或者在该线段上

    *3.32(几何:点的位置)给定一个从点p0(x0,y0)到p1(x1,y1)的有向线段,可以用以下公式判定定点p2(x2, y2)是在线段的左侧.右侧,或者在该线段上 题目 题目概述 运行示例 代码 ...

  8. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  9. Java黑皮书课后题第10章:**10.25(新的字符串split方法)String类中的split方法会返回一个字符串数组,该数组是由分隔符分隔开的子串构成的

    Java黑皮书课后题第10章:**10.25(新的字符串split方法) 题目 代码 运行实例 题目 代码 public class Test25 {public static String[] sp ...

  10. Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字

    Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字 题目 代码 结果 题目 都在上面 代码 import java.math.B ...

最新文章

  1. 我为什么晚上写代码?
  2. 组合求解器 + 深度学习 =?这篇ICLR 2020论文告诉你答案
  3. 原来女孩要的不是真爱,而是关爱...
  4. NoSQL和SQL怎么选用?
  5. Android 实现多个输入框的对话框
  6. Linux 系统应用编程——网络编程(高级篇)
  7. 信息学奥赛一本通(1259:【例9.3】求最长不下降序列)
  8. linux svn启动失败,linux svn authorization failed错误
  9. IT运维面试问题总结-基础服务、磁盘管理、虚拟平台和系统管理
  10. 为什么要学习 Spring Boot?
  11. 51CTO的企业文化——水文化
  12. iOS开发之--NSPredicate
  13. Java中od方向是什么意思_od的用法
  14. 射频中的回波损耗,反射系数,电压驻波比以及S参数的含义
  15. 在淘宝,我如何做好一个项目的启动?
  16. 同一交换机不同网段的主机间通信
  17. win10计算机本地连接属性在哪里,Win10系统怎么打开本地连接属性
  18. Python Diango学习之路
  19. [Leetcode] 377. 组合总和 Ⅳ
  20. 查看防火墙状态service iptables status报错

热门文章

  1. 开发者新春回血大礼包助你2021畅行无压力!
  2. 生产可用:是时候来一个微前端架构了!
  3. java finally的作用_java中finally关键字的特点和作用是什么
  4. 如何在手游中运用高逼格光影效果?
  5. 开源游戏服务器端框架Firefly正式将GFirefly整合
  6. jsonp的原理·jsonp是不是ajax中实现跨域访问的技术
  7. 动态 SQL、EXECUTE IMMEDIATE、using、into、returning
  8. error while loading shared libraries: xxx.so.x错误的原因和解决办法
  9. Linux学习笔记03
  10. 如何查看linux系统的体系结构