小编Hee*_*hta的帖子

检查两个数组是否相等

我试图知道两个给定的数组是否相等,与元素的排列无关,但包含相同的元素,并且所有元素的频率必须相同。

    int SameArray(int arr1[], int arr2[], int N, int M)
    {
        unordered_map<int, int> ump;
        if(N == M)
        {
            for(int i = 0; i < N; i++)
            {
                ump[arr1[i]]++;
            }
            for(int i = 0; i< M; i++)
            {
                if(ump.find(arr2[i]) != ump.end())
                    ump[arr2[i]]--;
            }
            if(ump.empty())
            return 1;
        }
        return 0;
    }
Run Code Online (Sandbox Code Playgroud)

它没有显示任何错误,但输出始终为0。

c++ arrays algorithm unordered-map equality

2
推荐指数
1
解决办法
147
查看次数

标签 统计

algorithm ×1

arrays ×1

c++ ×1

equality ×1

unordered-map ×1