美文网首页
[leetcode/lintcode 题解] 滴滴面试题:字符删

[leetcode/lintcode 题解] 滴滴面试题:字符删

作者: SunnyZhao2019 | 来源:发表于2020-06-02 18:28 被阅读0次

    【题目描述】

    输入两个字符串,从第一字符串中删除第二个字符串中所有的字符

    在线评测地址:

    https://www.lintcode.com/problem/character-deletion/?utm_source=sc-js-mh0602

    样例 :

    <pre>输入:  str=”They are students”,sub=”aeiou”
    输出: ”Thy r stdnts”</pre>
    

    【题解】

    用一个数组储存第二串中出现过的元素,然后遍历第一数组,将未出现在第二数组中的元素保存,最后输出答案

    <pre>public class Solution {
        /**
         * @param str: The first string given
         * @param sub: The given second string
         * @return: Returns the deleted string
         */
        public String CharacterDeletion(String str, String sub) {
            int[] tmp = new int[256];
            for (int i = 0; i < sub.length(); i++) {
                tmp[sub.charAt(i)]++;
            }
            StringBuffer ans = new StringBuffer("");
            for (int i = 0; i < str.length(); i++) {
                if (tmp[str.charAt(i)] == 0) {
                    ans.append(Character.toString(str.charAt(i)));
                }
            }
            return ans.toString();
        }
    }</pre>
    

    更多语言代码参见

    https://www.jiuzhang.com/solution/character-deletion/?utm_source=sc-js-mh0602

    相关文章

      网友评论

          本文标题:[leetcode/lintcode 题解] 滴滴面试题:字符删

          本文链接:https://www.haomeiwen.com/subject/sxlpzhtx.html