LeetCode 389. Find the Difference

来源:互联网 发布:mysql 可以用check约束 编辑:程序博客网 时间:2024/06/05 23:57

Find the Difference


题目描述:

Given two strings s and t which consist of only lowercase letters.

String t is generated by random shuffling string s and then add one more letter at a random position.

Find the letter that was added in t.

Example:

Input:s = "abcd"t = "abcde"Output:eExplanation:'e' is the letter that was added.

题目思路:

1.对s字符串中对每一个字符进行标记。并且记录出现次数。

2.遍历t字符串,如果该字符未被标记,则返回该字符。

3.如果该字符被标记过,则相应对出现次数减1。(直到减为0时,再次出现该字符,则视之为没有被标记,返回该字符即可)


题目代码:

class Solution {public:    char findTheDifference(string s, string t) {        map<char,int>table;        for(int i = 0; i < s.length(); i++){            table[s[i]]++;        }        for(int i = 0; i < t.length(); i++){            if(!table[t[i]]){                return t[i];            }else{                table[t[i]]--;            }                        }        return ' ';    }};

原创粉丝点击