学号20175301 《实现Linux下Sort -t : -k 2功能》

一、题目要求

模拟实现Linux下Sort -t : -k 2的功能。
要有伪代码,产品代码,测试代码(注意测试用例的设计)

二、题目信息

题目中给的一段代码模型:

1 import java.util.*;
2
3 public class MySort1 {
4     public static void main(String [] args) {
5         String [] toSort = {"aaa:10:1:1",
6                             "ccc:30:3:4",
7                             "bbb:50:4:5",
8                             "ddd:20:5:3",
9                             "eee:40:2:20"};
10
11         System.out.println("Before sort:");
12         for (String str: toSort)
13                     System.out.println(str);
14
15         Arrays.sort(toSort);
16
17         System.out.println("After sort:");
18         for( String str : toSort)
19             System.out.println(str);
20     }
21 }

要求实现Sort -t : -k 2的功能

  • -t 分隔符,将每一行数据按照该选项指定的分隔符分成多个域。默认情况下是使用tab键或者空格符来分割的。
  • -k 指定用哪个域的数据来进行排序
  • Sort -t : -k 2:即要求以冒号作为分隔符,给定数据的第二个区域的升序排列为标准,对输入数据进行排序。

    三、解题思路

    伪代码:
  1. 用split方法将tosort以冒号分割为四组
  2. 将第二组储存进数组K
  3. 遍历数组获取元素个数
  4. 对K数组进行arrays方法重新排序
  5. 排序后按照新K对原数组进行排列
  6. 输出新字符组
    产品代码:

猜你喜欢

转载自www.cnblogs.com/lijinran/p/10889029.html
今日推荐