Skip to content

Conversation

@juhee067
Copy link
Collaborator

@juhee067 juhee067 commented Jan 5, 2025

[배열]

배열은 데이터의 순서가 중요한 자료 구조로, 동일한 타입의 데이터를 순차적으로 저장할 수 있는 메모리 공간입니다.
배열은 인덱스를 사용해 각 요소에 접근하며, 탐색, 삽입, 삭제 등 다양한 연산을 수행할 수 있습니다.

📌 푼 문제

난이도 문제 이름 문제 링크
기초 배열 자르기 문제 링크
  배열 원소의 길이 문제 링크
  배열 회전시키기 문제 링크
  중복된 숫자 개수 문제 링크
중급 제일 작은 수 제거하기 문제 링크
  행렬의 덧셈 문제 링크
  나누어 떨어지는 숫자 배열 문제 링크
심화 행렬의 곱셈 문제 링크

📝 간단한 풀이 과정

기초

[배열 자르기]

function solution(numbers, num1, num2) {
  return numbers.slice(num1,num2+1)
}

[배열 원소의 길이]

function solution(strlist) {
return strlist.map(v=>v.length)
}

[배열 회전시키기]

function solution(numbers, direction) {
  if(direction==='right'){
        numbers.unshift(numbers.pop())
        return numbers
  }
    else {
        numbers.push(numbers.shift())
        return numbers
    }
    
}

[중복된 숫자 개수]

function solution(array, n) {
return array.filter(v=>v===n).length
}

중급

[제일 작은 수 제거하기]

function solution(arr) {
  if (arr.length <= 1) return [-1];
  const min = Math.min(...arr);
  return arr.filter((v) => v !== min);
}

[행렬의 덧셈]

function solution(arr1, arr2) {
    const arr=arr1.length;
    const element= arr1[0].length;
    const result = []
    for(let i=0; i<arr; i++){
        const row = []
        for(let j=0; j<element; j++){
           row.push(arr1[i][j]+arr2[i][j]) 
        }
        result.push(row)
    }
    return result
}

[나누어 떨어지는 숫자 배열]

function solution(arr, divisor) {
    const result = arr.filter(a=>a%divisor===0).sort((a,b)=>a-b)
return result.length===0 ? [-1]:result
}

심화

[행렬의 곱셈]

function solution(arr1, arr2) {
  const row = arr1.length;
  const col1 = arr1[0].length;
  const col2 = arr2[0].length;
  const answer = [];
  const result= Array.from(Array(row),()=>Array(col2).fill(0))

  for (let i = 0; i < row; i++) {
       for (let j = 0;  j < col2; j++) {
            for (let k = 0; k < col1; k++) {
                result[i][j]+=arr1[i][k]*arr2[k][j]
             }
         }
    }
   return result
}

담주 부터는 간단한 풀이과정도 함께 첨부하겠습니다. 이번주는 일이 많아서 정신 없이 문제 풀기만 했네요..!

Copy link
Collaborator

@Moonjonghoo Moonjonghoo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

전체적으로 메서드를 활용해서 간결하게 짜주셔서 확인할사항이 그렇게 많이보이지않았어요!
한주 고생하셨습니다

result.push(row);
}
return result;
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

문제를 잘이해하지못했었는데 풀이를 보고 잘이해하게되었습니다.

@JooKangsan JooKangsan merged commit 8904745 into main Jan 9, 2025
bona1122 pushed a commit to bona1122/AlgorithmStudy that referenced this pull request Jan 9, 2025
* 배열 자르기 / 기초

* 배열 원소의 길이 / 기초

* 배열 회전시키기 / 기초

* 중복된 숫자 개수
 / 기초

* 제일 작은 수 제거하기
 / 중급

* 나누어 떨어지는 숫자 배열 / 중급

* 행렬의 덧셈 / 중급

* 행렬의 곱셉 / 심화

* 스택 설명

* 문자열 뒤집기 / 기초

* 문자열 계산하기 / 기초
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants