首页 > 试题广场 >

字符串排序

[编程题]字符串排序
  • 热度指数:550704 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
\hspace{15pt}对于给定的由大小写字母混合构成的 n 个单词,输出按字典序从小到大排序后的结果。

\hspace{15pt}从字符串的第一个字符开始逐个比较,直到找到第一个不同的位置,通过比较这个位置字符对应的 \sf Ascii 码( \tt A < \cdots < Z < a < \cdots < z )得出字符串的大小,称为字典序比较。


输入描述:
\hspace{15pt}第一行输入一个整数 n \left( 1 \leqq n \leqq 1000 \right) 代表给定的单词个数。
\hspace{15pt}此后 n 行,每行输入一个长度 1 \leqq {\rm length}(s) \leqq 100 ,由大小写字母混合构成的字符串 s ,代表一个单词。


输出描述:
\hspace{15pt}输出 n 行,每行输出一个字符串,代表排序后的结果。第一行输出字典序最小的单词。
示例1

输入

11
cap
to
cat
card
two
too
up
boat
boot
AA
Aa

输出

AA
Aa
boat
boot
cap
card
cat
to
too
two
up
头像 小布点猫
发表于 2022-04-22 15:18:07
看似简单的题目,但是会犯上一个小失误,即输出少一个数据,并且是最后一次输入的字符串,而排序后的第一位是空: import java.util.*; public class Main { public static void main(String[] args) { 展开全文
头像 今天也要好好努力
发表于 2021-07-23 21:38:21
今天是2021-07-23,首先恭喜这道题最后一组测试用例已经被修复了 👍 👍 只需要按字典排列字符串,可以调用Arrays.sort API,也可以使用PriorityQueue,还可以自己实现Comparator,三种方法测试了一下用时相差不大。 代码已于2022年7月9日更新:根据评论 展开全文
头像 为看花火大会而编程
发表于 2021-10-09 01:51:42
while True: try: num=int(input()) stack=[] for i in range(num): stack.append(input()) print("\n".join( 展开全文
头像 wentian3007
发表于 2020-03-11 08:37:48
#include<iostream> #include<algorithm> #include<vector> #include<string> using namespace std; int main() { int n; vect 展开全文
头像 可导必连续^-^
发表于 2022-01-14 22:11:50
num = input()#num记录输入的词的个数 num = int(num) b = [] for i in range(num): b.append(input())#用列表b记录所有的输入的词汇 b.sort()#列表排序,默认为从小到大 for i in b: print 展开全文
头像 牛客169826552号
发表于 2020-04-09 20:23:26
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.has 展开全文
头像 未来0116
发表于 2021-11-10 21:25:36
HJ14字符串排序 一.题目描述 给定n个字符串,按字典序顺序进行排序。 二.算法(冒泡排序) 我们可以利用string进行读入,string的字典序是可以通过<,>重载来实现的,那么我们本质就是利用一种排序算法来实现,我们可以采用一种简单的排序算法——冒泡算法来实现,下面是冒泡算法的 展开全文
头像 读书不觉已春深
发表于 2020-08-16 18:04:59
num = int(input()) in_list = [input() for x in range(num)] in_list_s = [] in_list_s = sorted(in_list) for x in in_list_s: print(x)
头像 摸鱼学大师
发表于 2021-10-09 17:06:08
题目的主要信息: 给定n个字符串,对n个字符串按照字典序排列 第一行输入n,后面n行输入n个字符串 我们要知道的是,在C++中,直接对string型字符串做大小比较,是比较字典序,因为string类重载了大小比较符号。了解这个以后问题就迎刃而解了,我们将字符串当成数字,直接用排序算法就可以了。 展开全文
头像 橙子爱吃桃子
发表于 2020-09-03 17:17:05
C++简洁代码: #include<bits/stdc++.h> using namespace std; int main() { int n; cin >> n; vector<string> res(n); for(int i = 展开全文

问题信息

难度:
1377条回答 105538浏览

热门推荐

通过挑战的用户

查看代码
字符串排序