题目描述
实现一个可存储若干单词的字典。用户可以:
- 在字典中加入单词
- 查找指定单词在字典中的兄弟单词个数
- 查找指定单词的指定序号的兄弟单词,指定序号指地点中兄弟单词按字典顺序(参见Page3)排序后的序号(从1开始)
- 清空字典中所有单词
单词
由小写英文字母组成,不含其它字符。
兄弟单词
给定一个单词X,如果通过任意交换单词中字母的位置得到不同的单词Y,那么定义Y是X的兄弟单词。
字典排序
两个单词(字母按照自左向右顺序),先以第一个字母作为排序的基准,如果第一个字母相同,就用第二个字母为基准,如果第二个字母相同就以第三个字母为基准。以此类推,如果到某个字母不相同,字母顺序前的那个单词顺序在前。如果短单词是长单词从首字母开始连续的一部分,短单词顺序在前。
举例:bca是abc的兄弟单词;abc与abc是相同单词,不是兄弟单词
规格
0<=字典中所含单词个数<=1000
1<=单词所含字母数<=50
测试用例保证,接口中输入不会超出如上约束。
输入描述:
先输入字典中单词的个数,再输入n个单词作为字典单词。 输入一个单词,查找其在字典中兄弟单词的个数 再输入数字n
输出描述:
根据输入,输出查找到的兄弟单词的个数
示例1
输入
3 abc bca cab abc 1
输出
2 bca
算法实现
实现1
//思路1:
#include <iostream>
using namespace std;
int main() {
return 0;
}
小结
小结