C# 程式確定兩個單詞是否彼此互為異序詞


對於異序詞,另一個字串會在第一個字串中出現相同的字元,但字元的順序可以不同。

此處,我們檢查以下兩個字串 −

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

更新日期: 22-6 月-2020

8000+ 瀏覽量

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告