Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
Tags
- Spring
- AOP
- ansible
- LAN어댑터
- gradle
- Linux
- docker
- Pipeline
- DevOps
- Jenkins
- 소켓
- tomcat
- jdk
- IntelliJ
- Set
- 캐시서버
- 방화벽
- mybatis
- Collection
- sonarQube
- STREAM
- 액세스회선
- container
- JPA
- Java
- cloud
- map
- post
- 라우터
- 허브
Archives
- Today
- Total
거북이-https://velog.io/@violet_evgadn 이전완료
문자열 뒤집기 본문
코딩 테스트 시 필요한 이유
코딩 테스트 때 무조건 나오는 문제를 하나 고르라면 "문자열 문제"일 것이다.문자열 문제를 풀다 보면 마지막 Index부터 알고리즘 짜는 게 쉬워 역순으로 답을 구하고 구해진 답을 거꾸로 뒤집는 과정이 필요한 문제들이 몇 개 있었다.
이때 항상 "s.reverse()"라는 명령을 쓴다고 생각하고 사용하지만 Java에는 이런 명령이 존재하지 않는다.그래서 문자열을 뒤집을 때마다 항상 구글링을 해서 방법을 찾았는데, 문자열 문제는 항상 나오는 문제니 이번 기회에 정리해보기로 했다.
StringBuilder 사용
String str = "sample";
StringBuilder sb = new StringBuilder(str);
String reverse = sb.reverse().toString();
System.out.println("sample 뒤집기 : "+reverse);

아래 설명할 배열을 활용하는 방법이나 List를 사용하는 방법은 사실 큰 활용도는 없다.
이런 방법으로 문자열을 뒤집을 바에는 더 직관적이고 외우기도 쉬운 for문을 통해 Index 역순으로 글자를 불러오는 방법이 더 좋기 때문이다.
따라서 아래 2개는 이런 코드가 있구나 정도로만 알고 StringBuilder 사용 방법 꼭 외워두자.
char 배열로 변환하여 뒤집기
String str = "sample";
char[] strArr = str.toCharArray();
char[] strReverse = new char[strArr.length];
for(int i =0;i<strArr.length;i++) strReverse[i] = strArr[strArr.length-1-i];
String reverse = new String(strReverse);
System.out.println("sample 뒤집기 : "+reverse);

List로 변환 후 Collections.reverse 사용
String str = "sample";
char[] strArr = str.toCharArray();
List<Character> list = new ArrayList<>();
for(char c : strArr){
list.add(c);
}
Collections.reverse(list);
StringBuilder sb = new StringBuilder();
for(char c : list){
sb.append(c);
}
System.out.println("sample 뒤집기 : "+sb.toString());

'코딩 테스트 시 알면 좋은 것들' 카테고리의 다른 글
| Char 배열 처리 (0) | 2023.01.09 |
|---|---|
| 조합과 순열 (0) | 2023.01.03 |
| Compare 관련 메소드 (0) | 2022.12.31 |
| log & 거듭제곱 (0) | 2022.12.30 |
| N 진법 (0) | 2022.12.30 |
Comments