VIRTUALS

the virtual labs for the virtuals

0%

HJ14. 字符串排序

摘要:
熟悉C++和Java的排序轮子。

题目

描述
给定 $n$ 个字符串,请对 $n$ 个字符串按照字典序排列。

输入描述:
输入第一行为一个正整数 $n(1≤n≤1000)$,下面 $n$ 行为 $n$ 个字符串(字符串长度 $≤100$),字符串中只含有大小写字母。

输出描述:
数据输出 $n$ 行,输出结果为按照字典序排列的字符串。

示例1

输入:
9
cap
to
cat
card
two
too
up
boat
boot

输出:
boat
boot
cap
card
cat
to
too
two
up

Sort

重点关注C++和Java的排序轮子使用。其实这些排序轮子都默认对字符串按照字典序排序。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/*
* author: etoa
* 2021-08-18 22:44:57
*/
#include <bits/stdc++.h>

using namespace std;

int main()
{
int n;
cin >> n;
vector<string> vec(n);
for (int i = 0; i < n; i++) {
cin >> vec[i];
}
sort(vec.begin(), vec.end());
for (auto &each : vec) {
cout << each << endl;
}
return 0;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* 
* author: etoa
* 2021-08-18 23:05:59
*/
import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
List<String> list = new ArrayList<>();
for (int i = 0; i < n; i++) {
String s = in.next();
list.add(s);
}
Collections.sort(list);
for (String each : list) {
System.out.println(each);
}
}
}

原题链接: HJ14. 字符串排序