lintcode-171-乱序字符串
生活随笔
收集整理的這篇文章主要介紹了
lintcode-171-乱序字符串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
171-亂序字符串
給出一個字符串數組S,找到其中所有的亂序字符串(Anagram)。如果一個字符串是亂序字符串,那么他存在一個字母集合相同,但順序不同的字符串也在S中。
注意事項
所有的字符串都只包含小寫字母
樣例
對于字符串數組 ["lint","intl","inlt","code"]
返回 ["lint","inlt","intl"]
挑戰
What is Anagram?
- Two strings are anagram if they can be the same after change the order of characters.
標簽
哈希表 字符串處理 優步 臉書
思路
利用排序和哈希表,所有的亂序字符串經過排序后會對應同一個字符串,所以以排序后的字符串為哈希表,記錄此字符串出現次數,若出現不止一次,則為亂序字符串
code
class Solution { public: /*** @param strs: A list of strings* @return: A list of strings*/vector<string> anagrams(vector<string> &strs) {// write your code hereint size = strs.size(), i = 0;if (size <= 0) {return vector<string>();}vector<string> result;map<string, int> hash;for (i = 0; i < size; i++) {string temp = strs[i];sort(temp.begin(), temp.end());hash[temp]++;}for (i = 0; i < size; i++) {string temp = strs[i];sort(temp.begin(), temp.end());if (hash[temp] > 1) {result.push_back(strs[i]);}}return result;} };轉載于:https://www.cnblogs.com/libaoquan/p/7277933.html
總結
以上是生活随笔為你收集整理的lintcode-171-乱序字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mongoDb数据库可视化工具 ---
- 下一篇: linux与开发板串口通信