public void ReverseStringWithOnlyArray_Succeeds()
        {
            // Arrange
            var input = new string('a', 5000000);
            var expected = input;

            // Act
            var actual = StringAndArrayAlgorithms.ReverseStringWithOnlyArray(input);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void CheckPermutationSucceeds_WhenInputIsPermutation()
        {
            // Arrange
            string original = "hello";
            string input = "ellho";

            // Act
            var result = StringAndArrayAlgorithms.CheckPermutation(original, input);

            // Assert
            Assert.IsTrue(result);
        }
        public void CheckPermutationFails_WhenOtherInputNotPermutation()
        {
            // Arrange
            string original = "hello";
            string input = "abcde";

            // Act
            var result = StringAndArrayAlgorithms.CheckPermutation(original, input);

            // Assert
            Assert.IsFalse(result);
        }
        public void CheckPermutationUsingLinqFails_WhenInputNotPermutation()
        {
            // Arrange
            string original = "hello";
            string input = "ellhoo";

            // Act
            var result = StringAndArrayAlgorithms.CheckPermutationUsingLinq(original, input);

            // Assert
            Assert.IsFalse(result);
        }