[코드리뷰 스터디] 1주차

Jonie Kwon·2022년 4월 28일
0

프로그래머스 코드리뷰 스터디 9기가 어제 날짜로 시작되었다. 👏🏻👏🏻👏🏻
모든 세션에 빠짐없이 참가하고 문풀~리뷰 모두 열심히해서 매니저님처럼 좋은 회사에 취뽀하고싶다. 💪🏻

1주차 세션의 주요 내용은 아무래도 처음이다보니 리더님 소개와 오티, 자구알에 대한 기초적인 내용, 시간복잡도와 문제유형 파악하는 방법을 소개해 주셨고, 사전테스트 문제 풀이로 끝마쳤다.

시간복잡도에 대해서는 대충 100만개 넘으면 for문 하나만 써야됨 이렇게 허접하게 알고 있었는데(ㅠ) 사용할 수 있는 구체적인 접근법까지 제시해 주셔서 앞으로 문제를 볼 때 조금 더 쉽게 접근 할 수 있을 것으로 기대된다.

마지막에 있는 읽을거리가 너무 알차다. 면접 예상 질문 리스트까지 있다..!! 최합까지 화이팅😚


1주차 리뷰 내용

  • 오퍼레이터 사이 한 칸 띄우기

  • 예외처리는 LBYL(if 를 사용한 예외처리 방식)보다 EAFP 방식 try ~ except 권장
    (문제 조건에 따라 선택) 참고 : 링크

  • heapq.heapify : for문 쓰지 않고 리스트를 heapq
    정렬이 필요할 경우, heappush가 쓰이지 않으면 굳이 heapq 자료구조를 사용할 필요 없이 sort()로 충분

  • 파이썬에는 재귀횟수제한이 있고 제한 넘어가면 런타임오류를 일으킴
    아래 코드로 제한을 해제할 수 있으나 권장되지는 않음. 다른 방식으로 풀어보기

    import sys
    sys.setrecursionlimit(100000) 
  • 무한을 표현하는 방법 float('inf')

  • if ~ else는 하나로 합치거나 조건의 역 혹은 순서를 바꾸면 코드가 깔끔해질 수 있다.

  • 슬라이싱에서 끝나는 조건이 인덱스 범위를 벗어나더라도 에러가 나지 않는다. 😮

DFS와 BFS

DFSBFS
동작원리스택
구현방법재귀 함수 이용큐 자료구조 이용

1주차 후기

그동안 파이썬을 제대로 활용하고 있지 않았구나 하는 생각도 들었고 코드를 간결히, 가독성 좋게 작성할 수 있을 것 같은 기분이 든다. ^^; 무엇보다 생각할 수 있는 폭이 넓어진 것 같다. 혼자였다면 절대 생각하지 못 했을 부분에 계속 감탄하고 있다. 👍🏻👍🏻👍🏻
혹시나 다른 분들 코드보고 도움 드릴만한게 있을까하고 살펴봤는데, 오히려 도움만 받고있다 ㅎㅎ; 역시 다른 사람 코드 보는게 제일 어렵다는 말이 괜히 있는게 아니다. (리더님 정말 존경합니다..😂

profile
메모하는 습관

0개의 댓글