如何使用 C# 检查两个字符串是否是彼此的变位词?
在变位下,另一个字符串的特征与第一个字符串的特征相同,但特征的顺序可能不同。
此处,我们检查了下列两个字符串 −
string str1 = "silent"; string str2 = "listen";
将这两个字符串转换为特征数组 −
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);
比较两个字符串的相等性。如果两者相等,则这意味着它们是变位词。
以下为代码 −
示例
using System;
public class Demo {
public static void Main () {
string str1 = "silent";
string str2 = "listen";
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
广告
数据组织
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP