Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Các chuỗi có phải là anagram trong JavaScript


Anagram –

Hai chuỗi được nói là anagram của nhau nếu bằng cách sắp xếp lại, diễn giải lại hoặc xáo trộn chuỗi đầu tiên chúng ta có thể tạo thành một chuỗi giống hệt chuỗi thứ hai.

Ví dụ –

'something' và 'emosghtin' là anagram của nhau.

Chúng ta cần viết một hàm JavaScript nhận hai chuỗi, giả sử str1 và str2 và trả về true nếu chúng là anagram của nhau, false nếu không.

Ví dụ

Mã thực hiện:

const str1 = "something";
const str2 = "emosghtin";
const validAnagram = (str1 = '',str2 = '') => {
  let obj1 = {}
  let obj2 = {}
  if (str1.length !== str2.length){ return false };
  for(let char of str1){ obj1[char]= (obj1[char] || 0) + 1 };
  for(let char of str2){ obj2[char]= (obj2[char] || 0) + 1 };
  for(let val in obj1){
    if(!(val in obj2) || (obj2[val] !== obj1[val])){ return false }
  }
  return true;
};
console.log(validAnagram(str1, str2));

Kết quả

Kết quả trong console:

true