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 |
Tags
- 국비코딩
- 앱개발
- 국비지원파이썬
- 안드로이드
- IT개발캠프
- 러닝핏습관챌린지
- 러닝핏인강
- 스나이퍼팩토리
- 국비지원코딩
- 웹개발
- 내일배움투어
- 습관챌린지
- 유데미
- 코딩국비지원
- 0원코딩인강
- 플러터
- 개발자부트캠프
- 고용노동부국비지원
- K디지털기초역량훈련
- 부트캠프
- 러닝핏
- 개발
- 내일배움카드사용처
- Udemy
- 인사이드아웃
- 내일배움카드인강
- ios
- Flutter
- K디지털크레딧
- 웅진씽크빅
Archives
- Today
- Total
매일 땡기는 마라 코딩
[프로그래머스] Lv.0 배열의 원소 삭제하기 본문
문제
과정
1. 배열 arr와 배열 delete_list의 요소를 하나씩 비교
1-1. 배열 arr의 0번 인덱스와 배열 delete_list의 0번부터 끝까지 비교하는 방식으로
2. 비교해서 같다면 배열 arr의 해당 인덱스 삭제
여기서 출력할 값을 넣을 배열의 크기를 판단할 수 없는 상태이기 때문에, 동적으로 크기를 할당해 주어야 한다.
"ArrayList"
- Collection 프레임워크의 일부이며 java.util 패키지에 소속.
- 일반 배열과 다르게 크기가 가변적이다. -> 동적 할당
- 배열은 빈 공간을 허용하지만, ArrayList는 빈 공간을 허용하지 않는다.
- .add()로 추가, .remove()로 삭제가 가능하다.
- 배열과 동일하게 인덱스가 사용 가능하다. ex) arr[0]
//선언하는 방법
ArrayList<String> arr = new ArrayList<>();
코드
import java.util.*;
class Solution {
public ArrayList solution(int[] arr, int[] delete_list) {
ArrayList<Integer> answer = new ArrayList<>();
for(int i = 0; i<arr.length; i++){
boolean check = true;
for(int j = 0; j<delete_list.length; j++){
if(arr[i]==delete_list[j]){
check = false;
break;
}
}
if(check){ //if문은 조건이 true일 때 동작
answer.add(arr[i]);
}
}
return answer;
}
}
회고
원래는 remove를 사용해서 풀려고 했는데, 설명이 진심 안 읽혀서 친구의 도움을 빌려 ArrayList 사용하게 되었음.
배열 및 리스트의 주소 개념을 모르기 때문에 이해가 안 되는 부분이 많아 공부해야 할 듯하다.
아오 자괴감 들어,,,
참고 자료
728x90
'알고리즘' 카테고리의 다른 글
[프로그래머스] Lv.0 배열 비교하기 (1) | 2023.09.19 |
---|---|
[프로그래머스] Lv.0 뒤에서 5등 위로 (0) | 2023.09.18 |