30일차 TIL 210414

1. 자료구조에 대해서 배웠다.

  • 자료구조 : 여러 데이터들의 묶음을 어떻게 저장하고, 사용할 것인지 정의한 것
  • 자료들이 잘 분석이 되고 정리되고 활용되어야만 의미가 있다.
  • 자바스크립트에서 배열과 같은 미리 정의된 데이터 타입을 이용하여 자료구조를 유사하게 구현하여 알고리즘 문제를 해결할 수 있다.

1-1. stack/ queue

  • Stack : 프링글스처럼 자료를 쌓는 구조. / 입출이 하나인 제한적 접근 / LIFO / FILO
  • Stack은 브라우저에서 뒤로가기, 앞으로 가기 기능을 구현할 때 활용 된다.

  • Queue : 먼저 들어간 자료가 먼저 나오는 자료구조 형태 / FIFO / LILO
  • Queue 형태에서는 가장 나중에 진입한 데이터는 앞 데이터가 모두 빠져나가기전까지 처리될 수 없다.
  • Queue 는 프린터기에서 문서 인쇄가 될 때 활용된다. (순서가 필요한 경우)

1-2. 🐥위의 개념을 알아도 알고리즘 문제를 풀 수가 없다.

  • 동화 출간 관련 코플릿 문제 분석…
  let count = 1
  let max = countArr[0]
  for (let i = 1; i <= countArr.length; i++){
    if (countArr[i] > max || i === countArr.length){//|| i === countArr.length // 끝이 되었다는 조건을 추가해줘야 한다.
      max = countArr[i]
      result.push(count)
      count = 1
    }
    else if (countArr[i] <= max){
      count++
    }

  }return result
}

2. 잡담

  • 알고리즘 문제 푸는걸 좋아한다고 생각했는데 오늘 굉장히 큰 산을 만난 기분이다..
  • 오늘 할일을 내일로 미루면 내일 더 힘들어진다… 오늘 해야할 건 꼭 오늘 다 마무리 하자.
  • 콘솔에 찍어보기, 디버깅 해보기!!! 그래서 답을 찾아가는 과정을 계속해보자 🔆

Updated: