/Algorithm-Study

Beginner's Algorithm Study

Primary LanguagePython

Algorithm Study

Forks Welcome

초보 알고리즘 스터디

스터디 참여 방식

  1. 해당 프로젝트를 fork 한다.
  2. fork된 자신의 저장소에서 github ID로 폴더를 생성한다.
  3. 알고리즘 풀이 후 본인 폴더에 PUSH 한다.
  4. 스터디 프로젝트에 Pull Request(PR)을 요청한다.
  5. 코드 리뷰 후 Merge 한다.(매주 금요일)

파일 및 폴더 구조

  • 본인 Github ID로 된 폴더 내부 구조
  • /사용 플랫폼/문제 유형(혹은 레벨)/문제 이름 형식
  • 예시1 : /BOJ/Tree/1991. 트리순회
  • 예시2 : /PGS/Lv1/3진법 뒤집기
  • 예시3 : /PGS/코딩테스트 고득점/해시/폰켓몬
  • 예시3 : /LT/Easy/86. Partition List

COMMIT 형식

  • COMMIT MESSAGE : [문제이름 / 난이도 / 걸린시간]
  • DESCRIPTION : 문제 링크 주소
  • 예시:
git commit -m "트리 순회 / 실버1 / 30분" -m "https://www.acmicpc.net/problem/1991"

플랫폼 이름

  1. CD : Codility
  2. BOJ : 백준
  3. PGS : 프로그래머스
  4. LT : 리트코드
  5. SEA : 삼성SW Expert Academy
  6. 그외 : 각자 알아볼 수 있게 이름 지정(자유)

PR 형식

  • Github ID / 주차 / 몇 문제 사용언어라벨 사용 플랫폼라벨
  • label : 사용한 언어, 사용 플랫폼
  • 예시 : bmlsj / 7월 4주차 / 3문제 Java BOJ
  • COMMENT : 알고리즘 문제나 방식의 설명이나 어떤 점이 어려웠는 지의 회고를 작성(자유)

알고리즘 공부 방법(자유)

  1. 기본 개념 이해
  2. 기본 알고리즘 코드 학습
  3. 쉬운 문제 풀기
  4. 어려운 개념 이해 및 문제 풀기
  • TIP
    • 한 문제를 여러가지 방식으로 풀도록 생각하기
    • 문제가 안 풀려도 30 - 60분은 고민하기
    • 어려울 경우 솔루션 참고해 이해하기

코드 리뷰 참고사항

  • PR에서 코드 리뷰를 진행한다.
  • 전체 코드 흐름을 파악 후, 어떻게 풀었을 까 생각해본다
  • 의견 제시(자유)
    • 왜 이렇게 풀었을까 궁금한 부분
    • 이렇게 하면 더 좋을 것 같다
    • 이 부분이 잘했다고 생각한다
    • 또 다른 풀이 방식을 제시

참여 인원

참고 스터디

  1. 루틴스터디 알고리즘
  2. challenge100-codingtest-study
  3. 단국대학교 알고리즘 스터디