21년 1월 12일

한 일

  • Linked List
    • Doubly Circular LinkedList를 구현했었던 걸 보다 간략하게 수정하였다.
      • head를 sentinal node를 가리키게 하여 코드를 더 단순화 하였다.
    • Single LinkedList와 Double LinkedList도 구현해 보았다
  • Overloading 과 Overriding에 대해 오해하고 있던게 있어서 해당 내용 정리하여 포스트 했다.
  • 프로그래머스 H-index, 모의고사 문제를 풀었다.
    1. H-index는 구현보다 문제이해가 힘든 문제였다.
      • 제약 조건의 input 개수가 1000이라 O(n^2)으로 풀어도 1,000,000(약 0.1초) 연산이었다.
      • 저기서 더 빨리 풀어보겠다고 잔머리쓰다가 틀렸다.
      • 아주 조그만 시간 아끼겠다고 틀리지 말자
    2. 모의고사는 레벨1짜리 매우 간단한 문제였는데, 자바로 푸니 코드가 지저분한 느낌이다.

잘못한 것

잘한 것

  • 오버로딩과 오버라이딩을 정확히 알게 되었다.

느낌

  • 자바로 알고리즘 문제 풀까, 파이썬으로 바꿔서 연습해야 되나 고민된다.

  • 자바는 답으로 제출하는 아웃풋이 주로 배열이기 때문에, 리스트를 포문돌려서 배열에 넣어주는 과정이 너무 귀찮다..

    list.stream().mapToInt(i->i.intValue()).toArray(); //java8부터는 스트림을 이용하여 이렇게 바꿀수 있긴 하다.
    

할 일

  • 코드스쿼드 미션 진행
  • 프로그래머스 알고리즘 풀기
  • 자바의정석 읽기