- 배열 만들기 5
- 부분 문자열 이어 붙여 문자열 만들기
- 문자열의 뒤의 n글자
- 접미사 배열
다른방법 : 결국 한 글자씩 추가되며 배열에 더하므로 문자열 my_string의 길이만큼의 빈 배열 생성
for문과 substring을 통해 한 글자씩 문자열배열에 추가
Arrays.sort(answer)을 통해 문자열정렬 - 접미사인지 확인하기
다른방법 :
- 사용명령어 : str1.endsWith(str2) → str1이 str2가 접미사이면 true 아니면 false를 반환 - 문자열의 앞의 n글자
- 접두사인지 확인하기
- 사용명령어 : str1.startsWith(str2) → 접두사인지 확인하는 메소드 - 문자열 뒤집기
다른방법 : - 세로읽기
다른방법 : for문을 통해 c번째(c-1번째 인덱스) 문자를 문자열 answer에 추가하며
i가 m 씩 증가하게되면 같은 답을 구할 수 있다. - qr code
다른방법 :
※ answer 문자열을 생성할 때 answer +=을 사용하게 되면 매번 새로운 문자열을 생성하여 메모리 효율이 떨어진다
반면 StringBuilder의 append를 사용하게 되면 해당 문자열을 계속 변경하며 생성하기 메모리를 효율적으로 사용한다. - 문자 개수 세기
다른방법 :
for문의 다른형식 사용, 배열의 요소에 1증가(array[idx]++)
`for (a : b)`는 확장된 for 루프(enhanced for loop)를 나타냅니다. 이 구문은 배열 또는 컬렉션을 간편하게 순회할 수 있는 방법을 제공합니다.
`a`는 현재 반복되는 요소를 저장할 변수이고, `b`는 순회할 배열 또는 컬렉션입니다. 각 반복마다 `b`의 요소가 순차적으로 `a`에 할당되어 실행됩니다.
따라서 `for (char c : my_string.toCharArray())`와 같은 구문은 `my_string.toCharArray()`가 반환한 문자 배열을 순회하면서 각 요소를 변수 `c`에 할당하여 반복합니다.
이 구문은 코드를 간결하게 작성할 수 있고, 배열이나 컬렉션의 요소를 순회할 때 유용합니다. 반복을 위해 인덱스를 사용할 필요가 없으므로 코드의 가독성이 향상됩니다. - 배열 만들기 1
- 리스트 자르기
사용명령어 : switch문
어려웠던부분 : case 4에서 배열 answer의 크기를 지정하는 부분에 어려움이 있었음 - 첫 번째로 나오는 음수
- 배열 만들기 3
- 사용명령어 : System.arraycopy(arr1, idx1, arr2, idx2, n)
System.arraycopy(원본배열, 원본배열의 시작인덱스, 대상배열, 대상배열의 시작인덱스, 복사할 요소의 개수); - 2의 영역
※ 처음 풀었을 때 테스트 케이스 실패한 상황 :
- idx1,2의 초기화값을 0으로 두었을 때 arr[0] == 2인경우 마지막 if문에 걸려서 -1을 반환하게됨
→ 초기화값을 -1로 두었고 -1로 뒀을 때 else if문에서 Arrays.copyOfRange의
인덱스 시작범위가 음수가 되므로 에러가 발생
→ elsif에 idx 가 0이상의 정수 조건을 검 - 배열 조작하기
출처 : https://school.programmers.co.kr/learn/challenges/training?order=recent&languages=java&page=3
'Java & Spring > 코딩테스트' 카테고리의 다른 글
프로그래머스 - 기초트레이닝 6일차 (0) | 2024.05.06 |
---|---|
프로그래머스 - 기초트레이닝 5일차 (0) | 2024.05.06 |
프로그래머스 - 기초트레이닝 3일차 (0) | 2024.05.03 |
프로그래머스 - 기초트레이닝 2일차 (0) | 2024.05.02 |
프로그래머스 - 기초트레이닝 1일차 (0) | 2024.05.01 |