Skip to content

Commit 134f8bc

Browse files
committed
Add ReverseStringUsingStack utility for reversing strings using stack
1 parent 1e9cbd2 commit 134f8bc

File tree

1 file changed

+18
-17
lines changed

1 file changed

+18
-17
lines changed

src/main/java/com/thealgorithms/stacks/ReverseStringUsingStack.java

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,25 @@
33
import java.util.Stack;
44

55
public final class ReverseStringUsingStack {
6-
private ReverseStringUsingStack() {
7-
}
6+
private ReverseStringUsingStack() {
7+
}
88

9-
/**
10-
* @param str string to be reversed using stack
11-
* @return reversed string
12-
*/
13-
public static String reverse(String str) {
14-
Stack<Character> stack = new Stack<>();
15-
StringBuilder reversedString = new StringBuilder();
9+
/**
10+
* @param str string to be reversed using stack
11+
* @return reversed string
12+
*/
13+
public static String reverse(String str) {
14+
Stack<Character> stack = new Stack<>();
15+
StringBuilder reversedString = new StringBuilder();
1616

17-
if (str.isEmpty()) return str;
18-
for (char i : str.toCharArray()) {
19-
stack.push(i);
17+
if (str.isEmpty())
18+
return str;
19+
for (char i : str.toCharArray()) {
20+
stack.push(i);
21+
}
22+
while (!stack.isEmpty()) {
23+
reversedString.append(stack.pop());
24+
}
25+
return reversedString.toString();
2026
}
21-
while (!stack.isEmpty()) {
22-
reversedString.append(stack.pop());
23-
}
24-
return reversedString.toString();
25-
}
2627
}

0 commit comments

Comments
 (0)