-1

私はコーディング ホラー ( http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html )の古い記事を読んでいました。回答を提供した人々は、実際には小さな論理的な誤りを自分自身で犯していました (それらの約 30%)。

とにかく、私は自分自身に小さな挑戦を設定しようと考え、ここでたくさんのフィズバズに関する質問を見つけました:代替のフィズバズに関する質問

「文字列を逆にする」 - .net フレームワークのすべての組み込みメソッドには、これを行う方法がたくさんあります。

私の質問は次のとおりです。1. LINQ を使用して文字列を逆にする方法は? 2. C# で文字列を逆にする他の興味深い方法を思いつくことができますか?

これが私が思いついた2つの例です 1.完全にゼロから 2.列挙可能な逆メソッドを使用する(1ライナー)

    private static string FromScratchSimplified(string input)
    {
        // constructed reversed char array
        char[] reversedCharArray = new char[input.Length];
        for (int i = 0; i < input.Length; i++)
        {
            reversedCharArray[i] = input[input.Length-1-i];
        }

        // build string from char array
        string reversedString = new String(reversedCharArray);

        return reversedString;
    }


    private static string UsingEnumerableReverseMethod(string input)
    {
        // using Enumerable.Reverse method
        return new String(input.Reverse().ToArray());
    }

もう?

4

2 に答える 2

1
new string(Enumerable.Range(1, input.Length).Select(i => input[input.Length - i]).ToArray())
于 2013-06-08T07:17:31.267 に答える