はじめに
今回は回分かどうか調べてみようという記事になります!
回分というのは「しんぶんし」のように上から読んでも下から読んでも同じになる文句のことですね。
これを実装してみましょう。
やり方
public static bool IsPalindrome(IEnumerable<char> str) => str.SequenceEqual(str.Reverse());
char
型のコレクションに対して、反転したものと要素が一致しているかを確認しています。
ちなみにstring
もIEnurable<char>
インターフェイスを実装しているので使うことができます。
使い方はこんな感じ。
static void Main(string[] args) { char[] chars = { 'h', 'e', 'l', 'l', 'o' }; string str = "しんぶんし"; var result1 = IsPalindrome(chars); var result2 = IsPalindrome(str); }
さいごに
こんなに簡単にかけるなんて、本当にLinq
は便利ですよね。
今回は短いですがこのくらいで。
ではまた。