[항해99 취업 리부트 코스 학습일지][day6] 두근두근 알고리즘 첫 날

생성일:

2 분 소요

📍오늘의 목표

  • 나에게 맞는 알고리즘 공부 루틴 만들기
    • 옵시디언 알고리즘 노트에 문제 생성 ➡️ 30분 안에 문제 분석부터 제출까지 ➡️ 안되면 빠르게 해답 보기 ➡️ 옵시디언 알고리즘 노트에 고민한 점과 새로 배운 점 적기 ➡️ 4문제 풀고 스터디 일지에 붙이기 ➡️ 구글폼 제출하기 ➡️ 팀 스터디 시간에 인사이트 얻기 ➡️ TIL 완성하고 제출
  • 코딩 테스트 기본셋 & 문법 외우기 (입출력, …)
  • 과제 1 ~ 4번 문제 제출하기
  • TIL에 고민 / 새로 배운점 1개 이상 쓰기

📍TIL

항해 날짜별 질문 키워드

이번 주 진행된 팀 스터디에서 얻은 인사이트는 무엇인가요?

1) 알고리즘
  • 코딩 테스트 > 지금 백준으로 연습하고 있지만, 깔끔한 코드 작성을 위해 프로그래머스처럼 함수로 짜는 연습하기
  • 가장 중요한 것 > 🌟 같이 일하고 싶은 사람이 되자
    • 명명 규칙을 잘 짓기 ➡️ 이름만 보고도 동작을 유추하도록 ➡️ 일의 효율성 증대!
    • DDD, SRP 등 ➡️ 결국 보는 사람에게 편하도록 코드 작성
    • 팀 코드 선정도 보기좋게 작성했는지 고려
  • 자주 사용하고, 추천할만한 라이브러리
    • python collections로 검색해서 찾아보기 ( Counter, deque, defaultdict ➡️ 압도적! )
  • 효율적인 알고리즘 공부 방법
    • 모르는 문제 > 오랜 시간 고민❌, 해답 보고 외우기
    • 프로그래머스 레벨 1, 2, 3 ➡️ 반복해서 풀기
2) 면접 관련

: 기술 매니저님께 면접과 도메인 지식 관련해서 질문을 드렸다. 그에 대한 답변을 생각나는대로 정리한다.

  • 해당 회사에서 사용하는 기술들의 버전을 잘 알아두자
    • MySQL는 5점대와 8점대는 뭐가 다르지? 캐싱은 어떻게 하고있지?? 리드로그는 뭐지? 어떤 기능을 할 수 있는거지??
    • 스프링부트라면, Singleton 패턴 > 컴포넌트 어노테이션 안에 빈 객체가 싱글톤 객체로 이루어져있기 때문
    • 지금의 기술이 왜 나왔는지 파고파면 이유가 나온다! 공부하자

핵심 키워드

  • 리스트 컴프리헨션(List Comprehension)
    • 이중 for문을 넘어가면 컴프리헨션을 안쓰는게 나음
    • 평균적인 사람이 한 번에 볼 수 있는 양이 정해져있기 때문에 줄바꿈을 통해 글 단락을 나누는게 낫다.
  • 함수로 만들어서 푸는 것을 체화하자! (for 가독성 좋은 코드)
    • DDD
    • SRP -> 하나의 클래스는 하나의 원칙을 이룬다 -> 코드가 길어지면 위반했을 확률이 높음 -> 보는 사람이 불편함 -> 가독성이 안좋아지고 일 효율이 안높음
    • 명명 규칙이 중요! -> 메소드 내용을 안보고 이름만 보고 리턴을 예측하기 때문

새로 배운 내용

트러블슈팅 or 고민한 내용

  • 구현 문제라 그런지, 고민을 엄청 했는데 알고보니 내장 함수가 지원되고,, 하는 경우가 종종 있었다. 다양한 내장 함수를 자유자재로 사용할 수 있도록 파이썬 문제를 좀 더 많이 풀어봐야겠다.
  • 문제를 분석하고 접근하는 방법을 선택할 때 전략을 세워서 푼다기보단, 의식의 흐름대로 코드를 일단 짜는 것 같다. 문제를 분석하고 접근 방법을 생각한 다음 푸는 습관을 들여야겠다.

🥰 오늘의 잘한 일

  • 일단 주어진 과제 4개를 해답을 보지않고 고민해서 풀어냈다.
  • 먼저 풀고 ➡️ 앳지피티와 코워킹하듯 리팩토링을 진행했다. 내가 생각하지 못한 방식의 더 깔끔하고 효율적인 코드를 배울 수 있어서 좋았다.

💪 오늘의 아쉬운 일 & Action Plan

  • 알고리즘 첫 날이라 알고리즘 문제 풀이 템플릿도 만들고 어버버 하느라 시간이 금방 가버렸다. ➡️ 추가 문제긴 하지만 5번 ~ 8번 문제를 풀지 못했다. 💪 내일은 좀 더 빠르고 집중적으로 고민해서 5개를 풀어야지!



항해99 취업 리부트 코스를 수강하고 작성한 콘텐츠 입니다.
https://hanghae99.spartacodingclub.kr/reboot

댓글남기기