(알고리즘) 문자열 뒤집기
Q. 문자열을 입력 받아서 그 문자를 반대로 출력하는 로직을 구현해보자. ( eg. SEOUL ----> LUOES )
ver.StringBuffer 활용
String 값을 입력 받아 StringBuffer로 변환할 경우
StringBuffer의 reverse() 메소드를 사용할 수 있다.
import java.util.Stack; public class ReverseStrExample { public static void main(String[] args) { // TODO Auto-generated method stub String s = "SEOUL"; StringBuffer sb = new StringBuffer(s); System.out.println(sb.reverse()); } }
*String과 StringBuffer의 차이점
String은 불변객체. 고정길이.
StringBuffer는 사용하는 만큼 메모리 할당. char[] 형태.
ver.Stack 활용
String 문자열을 charAt(index) 활용하여, 하나씩 Stack에 담는다.
Stack의 pop 메소드를 활용하여 Return
import java.util.Stack; public class ReverseStrExample { public static void main(String[] args) { // TODO Auto-generated method stub String s = "I LOVE YOU"; Stack stack = new Stack(); for(int i=0;i<s.length();i++) stack.push(s.charAt(i)); while(!stack.empty()) System.out.print(stack.pop()); } }