C#程序,以确定两个词是否互为字母
对于anagram,另一个字符串在第一个字符串中将具有相同的字符,但是字符的顺序可以不同。
在这里,我们正在检查以下两个字符串-
string str1 = "heater"; string str2 = "reheat";
将两个字符串都转换为字符数组-
char[] ch1 = str1.ToLower().ToCharArray(); char[] ch2 = str2.ToLower().ToCharArray();
现在,对它们进行排序-
Array.Sort(ch1); Array.Sort(ch2);
排序后,将它们转换为字符串,如以下代码所示:
示例
using System; public class Demo { public static void Main () { string str1 = "heater"; string str2 = "reheat"; char[] ch1 = str1.ToLower().ToCharArray(); char[] ch2 = str2.ToLower().ToCharArray(); Array.Sort(ch1); Array.Sort(ch2); string val1 = new string(ch1); string val2 = new string(ch2); if (val1 == val2) { Console.WriteLine("Both the strings are Anagrams"); } else { Console.WriteLine("Both the strings are not Anagrams"); } } }
输出结果
Both the strings are Anagrams