如何使用 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