华为机试-14-字符串排列

不羁岁月 提交于 2019-11-26 16:38:41

字符串排列

  • 题目:给定n个字符串,请对n个字符串按照字典序排列。

输入描述:
输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。
输出描述:
数据输出n行,输出结果为按照字典序排列的字符串。

  • 示例:

输入
3
cap
to
cat
输出
cap
cat
to

  • 代码
import java.util.Scanner;
import java.util.Collections;
import java.util.ArrayList;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int a = Integer.parseInt(sc.nextLine());
        ArrayList<String> strList = new ArrayList<String>();
        for(int i=0;i<a;i++){
            String s = sc.nextLine();
            strList.add(s);
        }
        Collections.sort(strList);
        for(String str:strList){
            System.out.println(str);
        }
    }
}
  • 注意,同一个Scanner对象,如果先获取数值,再获取字符串,会出现问题(因为换行符)。解决:都采用nextLine()读取,再把对应的转成Int.
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!