Stack – Reverse a String using Stack



Learn how to reverse a String using Stack. In this example takes in an array based Stack.

Stack – Data Structure – Array-based and Linked list based implementation.

The followings are the steps to reversing a String using Stack.

  1. String to Char[].
  2. Create a Stack.
  3. Push all characters, one by one.
  4. Then Pop all characters, one by one and put into the char[].
  5. Finally, convert to the String.
public static String reverse(String str) {
        char[] charArr = str.toCharArray();
        int size = charArr.length;
        Stack stack = new Stack(size);

        int i;
        for(i = 0; i < size; ++i) {

        for(i = 0; i < size; ++i) {
            charArr[i] = stack.pop();

        return String.valueOf(charArr);

Time complexity – O(n)

Space complexity – O(n)

Complete Example

Original post : -

Create your playground on
This playground was created on, our hands-on, knowledge-sharing platform for developers.
Go to