ID photo of Ciro Santilli taken in 2013 right eyeCiro Santilli OurBigBook logoOurBigBook.com  Sponsor 中国独裁统治 China Dictatorship 新疆改造中心、六四事件、法轮功、郝海东、709大抓捕、2015巴拿马文件 邓家贵、低端人口、西藏骚乱
cpp/string_is_permutation.cpp
// Check if two std::string objects are a permutation of one another.

#include <cassert>
#include <unordered_map>
#include <string>

bool is_permutation(const std::string& s1, const std::string& s2) {
    std::unordered_map<char,int> counts1, counts2;
    for (const auto& c : s1) {
        counts1[c]++;
    }
    for (const auto& c : s2) {
        counts2[c]++;
    }
    return counts1 == counts2;
}

int main() {
    assert(is_permutation("", ""));
    assert(is_permutation("a", "a"));
    assert(is_permutation("ab", "ab"));
    assert(is_permutation("ab", "ba"));
    assert(!is_permutation("a", "b"));
    assert(!is_permutation("a", "aa"));
}