728x90
코드 힌트:
접미사를 가지고 오는 방법은 2가지가 있습니다
1. 역순으로 문자열에서 접미사 추출:
- 문자열을 역순으로 순회하면서 각 인덱스에서부터 문자를 하나씩 가져오는 방법입니다.
2. 순서대로 접미사 추출:
- 문자열을 순서대로 탐색하면서 substring() 메서드를 사용하여 접미사를 추출하는 방법입니다.
저는 substring을 추천합니다( 처리 속도와 메모리 사용량 면에서도 효율적이라는 장점이 있습니다. )
역순으로 꺼내기
for (int i = my_string.length()-1; i >= 0; i--) {
my_string.charAt(i)를 사용하여 해당 값을 꺼냅니다
}
substring을 사용하여 자르기
for (int i = 0; i < my_string.length(); i++) {
my_string.substring(i, my_string.length())
}
- 정렬: Arrays.sort() 메서드를 사용하여 문자열 배열을 사전순으로 정렬합니다.
import java.util.Arrays;
Arrays.sort(배열);
정답은 더보기 클릭
더보기
1. 역순 charAt() 사용
import java.util.Arrays;
class Solution {
public String[] solution(String my_string) {
String[] result = new String[my_string.length()]; // 결과를 저장할 배열 생성
String s = ""; // 누적된 문자열을 저장할 변수
int index = 0; // 결과 배열의 인덱스
// 문자열을 뒤집어가며 처리
for (int i = my_string.length()-1; i >= 0; i--) {
s = my_string.charAt(i) + s; // 문자열을 뒤집어가며 s에 누적
result[index++] = s; // 현재 누적된 문자열을 결과 배열에 저장
}
Arrays.sort(result); // 결과 배열을 사전순으로 정렬
return result; // 정렬된 결과 배열 반환
}
}
2. substring() 사용
import java.util.Arrays;
class Solution {
public String[] solution(String my_string) {
String[] result = new String[my_string.length()]; // 결과를 저장할 문자열 배열 생성
// 문자열의 각 위치에서 접미사를 추출하여 result 배열에 저장
for (int i = 0; i < my_string.length(); i++) {
result[i] = my_string.substring(i, my_string.length());
}
Arrays.sort(result); // 문자열 배열을 사전순으로 정렬
return result; // 정렬된 접미사 배열 반환
}
}
728x90
'프로그래머스(Java) > Level 0' 카테고리의 다른 글
[프로그래머스] 특별한 이차원 배열2 (0) | 2024.07.12 |
---|---|
[프로그래머스] 안전지대 (0) | 2024.07.11 |
[프로그래머스] 가까운 1 찾기 (0) | 2024.07.07 |
[프로그래머스] 최댓값 만들기(2) (0) | 2024.07.07 |
[프로그래머스] 직각삼각형 출력하기 (0) | 2024.07.07 |