LeetCode389.找不同

给定两个字符串 s 和 t,它们只包含小写字母。

字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。

请找出在 t 中被添加的字母。

示例:

输入:
s = "abcd"
t = "abcde"

输出:
e

解释:
'e' 是那个被添加的字母。

题解:
两个数组,分别进行计数,然后最后找,谁多了一个,那就是谁重复了

public:
    char findTheDifference(string s, string t) {
        vector<int> hash(26,0);
        vector<int> hash1(26,0);
        for(auto x : s){
            hash[x - 'a'] ++;
        }
        for(auto x : t){
            hash1[x - 'a'] ++;
        }
        for(int i = 0 ; i < 26 ; i++){
            if(hash[i] != hash1[i]) return 'a' + i;
        }
        return 'o';
    }
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 8,758评论 0 2
  • 《裕语言》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 28,405评论 5 19
  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 7,046评论 0 4
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 9,947评论 0 5
  • 青春的迷茫,往往来源于对现实不理解而对理想又不确信。 这里有一本书,很多经历过青春苦闷的人可能看过。毛姆的《人生的...
    Qme阅读 4,187评论 0 1