1. TIL
- 배열은 여러 개의 값을 순차적으로 나열한 자료구조다.
- 배열은 요소의 개수, 즉 배열의 길이를 나타내는 length 프로퍼티를 갖는다.
- 배열은 인덱스와 length 프로퍼티를 갖기 때문에 for문을 통해 순차적으로 요소에 접근할 수 있다.
- 배열은 객체지만 일반 객체와는 구별되는 특징이있다.
구분 | 객체 | 배열 |
구조 | 프로퍼티 키와 프로퍼티 값 | 인덱스와 요소 |
값의 참조 | 프로퍼티 키 | 인덱스 |
값의 순서 | ❌ | ⭕️ |
length 프로퍼티 | ❌ | ⭕️ |
- 2차원 배열(배열을 요소로 갖는 배열)을 입력받아 특정 알파벳 'B'의 위치 정보를 요소로 갖는 배열 출력하기.
function findBugInApples(arr) {
//2차원 배열의 순회
for (let i = 0; i < arr.length; i++) {
//j(col)은 i(row)요소의 개수만큼 반복하여 값에 접근한다.
for (let j = 0; j < arr[i].length; j++) {
if (arr[i][j] === 'B') {
return [i, j];
}
}
}
}
- 변수를 선언하고 0으로 초기값을 주었다.
- 바깥의 for문은 각각 줄을 반복하고, 안쪽의 for문은 해당 줄의 칸들을 반복하게 되므로, 줄의 반복되는 부분에서 값을 1 증가시켜준다.
let output = findBugInApples([['A'], ['B']]);
console.log(output); //[1, 0]
output = findBugInApples([
['A', 'A', 'A', 'A', 'A'],
['A', 'B', 'A', 'A', 'A'],
['A', 'A', 'A', 'A', 'A'],
['A', 'A', 'A', 'A', 'A'],
['A', 'A', 'A', 'A', 'A'],
]);
console.log(output); //[1, 1]
2. Remind
- 2차원 배열의 요소는 차례대로 행, 열이다. ([행, 열])
'Daily coding' 카테고리의 다른 글
[프로그래머스] Lv.1 나누어 떨어지는 숫자배열 (0) | 2022.06.27 |
---|---|
[프로그래머스] Lv.1 핸드폰 번호 가리기 (0) | 2022.06.21 |
[프로그래머스] Lv.1 서울에서 김서방 찾기 (0) | 2022.06.20 |
[프로그래머스] 수박수박수박수박수? (0) | 2022.06.13 |
[프로그래머스] 숫자 문자열과 영단어 (0) | 2022.06.12 |