使用 JavaScript 编写一个程序,检查两个字符串是否互为字谜。


给定两个字符串“a”和字符串“b”,我们需要检查它们是否互为字谜,并返回 True/False。例如,

输入 1

String a= “india”
String b= “nidia”

输出

True

解释 − 由于给定的字符串“b”包含字符串“a”中的所有字符,因此我们将返回 True。

输入 2

String a= “hackathon”
String b= “achcthoon”

输出

False

解释 − 由于给定的字符串“b”不包含字符串“a”中的所有字符,因此我们将返回 False。

解决此问题所使用的方法

在给定的字符串“a”和“b”中,我们将检查它们是否具有相同的长度,然后对字符串进行排序。如果两个字符串相等,则返回“True”;否则,打印“False”。

  • 输入两个字符串“a”和“b”。

  • 一个函数 checkStringAnagrams(string a, string b),如果它们互为字谜,则返回 true,否则返回 false。

  • 查找两个字符串的长度,并检查它们是否相同。

  • 现在按字典序对两个字符串进行排序,并检查它们是否相等。

  • 相应地返回 true 或 false。

示例

function checkStringsAnagram(a, b) {
   let len1 = a.length;
   let len2 = b.length;
   if(len1 !== len2){
      console.log('Invalid Input');
      return
   }
   let str1 = a.split('').sort().join('');
   let str2 = b.split('').sort().join('');
   if(str1 === str2){
      console.log("True");
   } else { 
      console.log("False");
   }
}
checkStringsAnagram("indian","ndiani")

输出

运行以上代码将生成以下输出:

True

由于字符串“indian”与另一个字符串“ndiani”具有相同的字符集,因此它们互为字谜,因此我们将返回 True。

更新于:2021 年 2 月 5 日

21K+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告