# Blogs Hub

### by Sumit Chourasia | May 25, 2020 | Category :coding | Tags : algorithmleetcodeआसानडेटा-संरचनाstring

#### Reverse String - मिनी टीवी

Write a function that reverses a string. The input string is given as an array of characters char[].

Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.

You may assume all the characters consist of printable ASCII characters.

Example 1:

Input: ["h","e","l","l","o"]

Output: ["o","l","l","e","h"]

Example 2:

Input: ["H","a","n","n","a","h"]

Output: ["h","a","n","n","a","H"]

Solution:

``````using System;
using System.Collections.Generic;
using System.Text;

{
public class ReverseStringSoln
{
public void ReverseString(ref char[] s)
{
for(int i=0, j = s.Length - 1; i < j; i++, j--)
{
char temp = s[i];
s[i] = s[j];
s[j] = temp;
}
}
}
}
``````

Time Complexity: O(n)

Space Complexity: O(1)

Unit Tests:

``````using CodingUnitTest.Util;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Collections.Generic;
using System.Text;

namespace CodingUnitTest.Easy.String
{
[TestClass]
public class ReverseStringSolnTests
{
[TestMethod]
public void ReverseStringSoln_First()
{
var input = new char[] { 'h', 'e', 'l', 'l', 'o' };
var output = new char[]{'o', 'l', 'l', 'e', 'h'};
new ReverseStringSoln().ReverseString(ref input);

ContractAssert.AreEqual(input, output);
}
}
}
``````

Contributed By: Sumit Chourasia
Contributed By: Sumit Chourasia
Contributed By: Sumit Chourasia
Contributed By: Sumit Chourasia