나의 모양

[DailyCoding] 05 | firstReverse 본문

SEB/Daily Coding

[DailyCoding] 05 | firstReverse

kexon 2022. 7. 27. 20:25

✍🏻 Description

  • 문자열을 입력받아 순서가 뒤집힌 문자열 리턴
  • 예시
String output = firstReverse(“abcde”);
System.out.println(output);

/* 출력값
edcba
*/

📝 Flow

1. 순서가 뒤집힌 문자열 담을 변수
2. for loop => 문자열 읽어오기
3. StringBuilder.reverse() 활용
4. char[]로 역순된 새로운 char 배열에 저장 후 문자열로 변환

🤯 Difficulty

  • 문제를 의사코드로 표현하기 어려움

🪆 Attempt

  • 레퍼런스 → 이해 → 구현

📚 TIL

  • StringBuilder
    • 내부에 버퍼를 가지고 있어 변경 가능한 문자열을 만들 때 사용
    • StringBuilder.reverse(): 문자열 역순 배치
    • .toString() 붙이는 이유: StringBuilder를 문자열로 반환
  • toCharArray()
    • 문자열을 char타입 배열로 바꿔주는 녀석 Converts this string to a new character array
    • 반환 배열 길이 == 문자열 길이
    • 문자열 공백도 인덱스에 포함
    • 사용법: 변수명.toCharArray()

👩🏻‍💻 Implementation

  • StringBuilder 사용
StringBuilder sb = new StringBuilder(str);
return sb.reverse().toString();
  • char[]
char[] arr = str.toCharArray();
char[] reversedArr = new char[arr.length];

for (int i = 0; i < arr.length; i++) {
    reversedArr[arr.length - 1 - i] = arr[i];
}

String reversedStr = new String(reversedArr);
return new StringBuilder(reversedStr);
Comments