Skip to content

Commit 461f5d0

Browse files
jiyeeeahbona1122
authored andcommitted
[jiyeeeah] 25.01.03 (codingTestStd#9)
* 배열 자르기 / 기초 * 배열 원소의 길이 / 기초 * 배열 회전시키기 / 기초 * 중복된 숫자 개수 / 기초 * 제일 작은 수 제거하기 / 중급 * 행렬의 덧셈 / 중급 * 나누어 떨어지는 숫자 배열 / 중급 * 행렬의 곱셈 / 심화 * 배열 배운 것 정리 파일
1 parent ffc2cf5 commit 461f5d0

File tree

9 files changed

+96
-0
lines changed

9 files changed

+96
-0
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
function solution(strlist) {
2+
const answer = [];
3+
for (const str of strlist) {
4+
answer.push(str.length);
5+
}
6+
return answer;
7+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function solution(arr, divisor) {
2+
const answer = [];
3+
for (const val of arr) {
4+
if (val % divisor === 0) answer.push(val);
5+
}
6+
if (answer.length <= 0) answer.push(-1);
7+
answer.sort((a, b) => a - b);
8+
return answer;
9+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
function solution(array, n) {
2+
return array.filter((value) => value === n).length;
3+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
function solution(arr1, arr2) {
2+
const r1 = arr1.length;
3+
const c1 = arr1[0].length;
4+
const r2 = arr2.length;
5+
const c2 = arr2[0].length;
6+
// c1 === r2임
7+
8+
const answer = new Array(r1).fill(0).map(() => new Array(c2).fill(0));
9+
10+
for (let i = 0; i < r1; i++) {
11+
for (let j = 0; j < c2; j++) {
12+
for (let k = 0; k < c1; k++) {
13+
answer[i][j] += arr1[i][k] * arr2[k][j];
14+
}
15+
}
16+
}
17+
return answer;
18+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
function solution(arr1, arr2) {
2+
const Xn = arr1.length;
3+
const Yn = arr1[0].length;
4+
const answer = new Array(Xn).fill(0).map(() => new Array(Yn).fill(0));
5+
for (let i = 0; i < Xn; i++) {
6+
for (let j = 0; j < Yn; j++) {
7+
answer[i][j] = arr1[i][j] + arr2[i][j];
8+
}
9+
}
10+
return answer;
11+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function solution(arr) {
2+
const answer = [...arr];
3+
4+
const minNum = arr.sort((a, b) => a - b)[0];
5+
answer.splice(answer.indexOf(minNum), 1);
6+
if (answer.length <= 0) answer.push(-1);
7+
8+
return answer;
9+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
function solution(numbers, direction) {
2+
const answer = [...numbers];
3+
if (direction === "right") {
4+
const temp = answer.pop();
5+
answer.unshift(temp);
6+
} else if (direction === "left") {
7+
const temp = answer.shift();
8+
answer.push(temp);
9+
}
10+
return answer;
11+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
function solution(numbers, num1, num2) {
2+
const answer = numbers;
3+
return answer.slice(num1, num2 + 1);
4+
}

jiyeeeah/[week1]Array/배열.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
> 이번에는 문제를 풀며 몰랐거나 까먹었다가 이제 다시 알게 된 부분들 위주로 정리해봤습니다.
2+
3+
## 2차원 배열 만들기
4+
5+
```js
6+
const arr = new Array(5).fill(0).map(() => new Array(4));
7+
```
8+
9+
### 📄 REFERENCE
10+
11+
https://joonfluence.tistory.com/508
12+
13+
## 행렬의 곱셈
14+
15+
```js
16+
const r1 = arr1.length;
17+
const c1 = arr1[0].length;
18+
const r2 = arr2.length;
19+
const c2 = arr2[0].length;
20+
// 여기서 c1 === r2이다.
21+
22+
// 결과 배열은 r1 * c2이다.
23+
const answer = new Array(r1).fill(0).map(() => new Array(c2).fill(0));
24+
```

0 commit comments

Comments
 (0)