zoukankan      html  css  js  c++  java
  • 一个小算法题的对比

    242. Valid Anagram

    Given two strings s and t, write a function to determine if t is an anagram of s.

    For example,
    s = "anagram", t = "nagaram", return true.
    s = "rat", t = "car", return false.

    Note:
    You may assume the string contains only lowercase alphabets.


    class Solution { public: bool isAnagram(string s, string t) { if (s.length() != t.length()) return false; int n = s.length(); unordered_map<char, int> counts; for (int i = 0; i < n; i++) { counts[s[i]]++; counts[t[i]]--; }//直接引用key值hash到second的值未做到一步 for (auto count : counts)////新的foreach 用法 if (count.second) return false; return true; } };
    /////////////////////////////////
    class Solution {
    public:
        bool isAnagram(string s, string t) {
            if(s.size()!=t.size())
            {
                return false;
            }
            if(s.size()==0)return true;
            unordered_map<char,int> h;
            for(int a=0;a<s.size();a++)
            {
                h[s[a]]++;
            }
            for(int b=0;b<t.size();b++)
            {
             if(h.find(t[b])==h.end())return false;
             h.find(t[b])->second--;
            }
            for(auto start=h.begin();start!=h.end();start++)
            {
                if(start->second!=0)return false;
            }
            return true;
        }
    };
  • 相关阅读:
    prototype 和function关系等总结
    js作用域的几个问题
    关于对象引用的作用域
    深刻理解下js的prototype
    如何判断一个对象是数组
    理解js的几个关键问题(2): 对象、 prototype、this等
    更新触发器
    sql事物和try catch
    图片与base64编码互换
    UCML点击BPO报异常
  • 原文地址:https://www.cnblogs.com/fenglongyu/p/7572257.html
Copyright © 2011-2022 走看看