2012 百度实习笔试题-兄弟单词
2012-09-19 10:11
288 查看
一个单词单词字母交换,可得另一个单词,如army->mary,成为兄弟单词。提供一个单词,在字典中找到它的兄弟。描述数据结构和查询过程。
思路:利用STL函数next_permutation()自动生成含有该单词所有字母的所有字符串序列,然后逐个在字典中查找。同时,查找时,通过预先判断待匹配单词的长度和该单词长度,加速查找过程。上伪代码:
#include <iostream> #include <algorithm> #include <string> using namespace std; struct { Word* word; unsigned int len_Volca;//字典里单词数 }Volca;//已经存储好的字典 struct { string word_string; }Word; Word pWord; int main() { string str; // 用str来存储待查找单词 cin>>str; unsigned int str_len = str.len(); Word operator_word; operator_word.word_string = str; sort(str.begin(),str.begin()); cout<<str<<endl; while(next_permutation(str.begin(),str.end())) { for(int i = 0 ; i < len_Volca;i++) { if(pWord.word_string[i].len()==str_len) { cout<<str<<endl; if(pWord.word_string[i] == str) { int count = 1; printf("The %drd brother word is %s !",count,str); count++: } } } } system("pause"); return 0; }
相关文章推荐
- 兄弟单词问题 --百度实习笔试题(2012.5.6)
- [笔试] 查找兄弟单词(2012/5/6 百度实习笔试题)
- [笔试] 查找兄弟单词(2012/5/6 百度实习笔试题)
- 2012百度笔试题 - 实习软件研发工程师
- 字典中查找兄弟词,如 army 与 mary为兄弟单词(2012.5.6百度实习生笔试)
- 寻找兄弟单词(2012.5.6百度实习)
- 查找兄弟单词(2012/5/6 百度实习笔试题)
- 百度2017年暑期实习生笔试题——单词接龙(有向欧拉图)
- 百度暑期实习在线笔试题
- 2012微软暑期实习笔试
- 2012腾讯实习笔试归来兮辞
- 2012百度实习招聘
- 【面试题】2012 多盟 实习笔试
- 2012腾讯暑期实习笔试总结
- 2014华为实习上级笔试题-- 统计字符串中出现的单词
- 2012腾讯实习部分笔试题-广州站
- 2012腾讯实习笔试题
- 国内著名IT公司(百度、搜狗、网易、新浪)2012校园招聘笔试、面试小结
- 恒生电子2012实习笔试题
- [笔试] 归并排序(2012/5/6 百度实习笔试题) O(1)