Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function same(arr1, arr2) {
- // O(N)
- if (Array.isArray(arr1) && Array.isArray(arr2)) {
- if (arr1.length !== arr2.length) {
- return false;
- }
- const freqCounter1 = {};
- const freqCounter2 = {};
- for (let val of arr1) {
- freqCounter1[val] = (freqCounter1[val] || 0) + 1;
- }
- for (let val of arr2) {
- freqCounter2[val] = (freqCounter2[val] || 0) + 1;
- }
- for (let key in freqCounter1) {
- if (!(key ** 2 in freqCounter2)) {
- return false;
- }
- if (freqCounter2[key ** 2] !== freqCounter1[key]) {
- return false;
- }
- }
- return true;
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement