Skip to content

nouu94/zerobase_localhost_codingtest_study

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LocalHost 조 스터디




22년 5월 8일 작성





1. 소개 및 스터디 요약

안녕하세요 제로베이스 데이터사이언스 스쿨 3기 LocalHost 조 입니다. LocalHost 조는 L 조에서 따 온것도 있고 주인 의식을 갖고 각자의 역할을 충실히 하자는 의미에서 LocalHost 라는 이름을 지었습니다 멋있죠 ㅋ? 해당 레파지토리는 LocalHost 조의 코딩 테스트 역량 향상을 위해 만들었습니다.



알고리즘 코딩 테스트는 비문학 독해 능력 + 수리적 능력 + 아이디어 + 세가지를 기반으로 한 코딩 구현 4가지의 능력을 압축시켜 하나로 만들어야 합니다. 따라서 기나 긴 여정이 필요하죠. 하지만 우리는 시간이 없습니다. 단 6개월 그것도 알고리즘만 하는 시간이 6개월이 아니라 DB, GITHUB, 통계, 파이썬 EDA, 머신러닝, 딥러닝 프로젝트를 포함한 시간 6개월 입니다. 그래서 빨리빨리 어떠한 유형이 나오는지 파악하여 분석하고 패턴에 입각해서라도 해야 됩니다.



그래서 나동빈님의 알고리즘 영상 과 2기 선배님들의 월별 스터디 계획을 바탕으로 아래와 같이 한 달 스케줄을 짜 보았습니다. 간단하게 요약하자면 링크에 있는 깃허브 레파지토리에 하루에 한번씩 월, 화, 목, 금 예습 날에는 내가 공부했던 알고리즘 .py 파일을 올릴 것이며, 복습 날인 수, 토에는 월,화 목,금에 대한 복습을 진행하는 차원으로 내가 가장 어려웠던 문제라고 생각했던 것, 혹은 어려웠는데 이렇게 풀었다는 문제들을 md 기반으로 글을 쓸 겁니다. 일요일에는 md 기반으로 만든 글을 발표하는 시간을 가지고 트렐로 툴을 이용해 KPT 회고를 통해 잘한 점, 잘 못한 점, 잘한점 + 잘 못한 점을 기록하는 시간을 가질 것 입니다.



이제 일자별로 자세한 계획을 말씀드리겠습니다. 5월 9일부터 11일까지 3일 동안 최대한 몰입해서 제로베이스 알고리즘 강의를 듣고, 해당 코드를 그대로 친 뒤 코드에 관해 왜 이렇게 써야하는지 하나, 하나 최대한 주석을 달아 작성할 겁니다. 10일에는 코딩테스트 연습이 있으므로 하루 패스하여 복습하는 시간 없이 파이썬 코딩만 작성합니다.


12일 부터 본격적으로 '이것이 코딩테스트다' 서적을 기반으로 하루에 한 단원씩 진행하고 기본문제, 실전문제를 풀어볼 겁니다. (더 나아가 백준 유형 중 한문제를 풀면 이보다 더 좋을 수 없겠죠?!) '이것이 코딩테스트다' 부터는 복습 날에 내가 생각했던 가장 어려웠던 한, 두 문제를 선택해 마크다운으로 작성하는 시간을 가져 볼 것 입니다. 마지막으로 해당 이미지에서는 안보이지만 향상도 측정방법을 생가해봤는데요, 21 ~ 22일 주말에 프로그래머스 1레벨 문제를 시간 제한 두고 최대한 풀어보는 걸로 잡았습니다.

image









dd

xxx : 응 목표 완수 안해 ~ 자퇴하면 그만이야~





urbanbrush-20190418024119683956

우리 이런 마인드 가지지 말고 힘내서 미래를 위해 나아가봐요~ 화이팅




2. 마크다운 양식

수, 토 복습 날에는 마크 다운 기반의 글을 적어야 하는데요, 양식을 통일하여 작성하면 좋을 것 같아 다음과 같이 양식을 작성하기를 권유합니다.


제목




알고리즘 소개




풀이 과정




(선택) 풀이 과정 대신 다른 과정을 통해




어떠한 어려움이 있었는지? or 어떠한 어려움이 있었는데 극복했는지?






해당 양식에 대한 피드백이 있으시다면 언제든 환영입니다.




3. .py 작성 법

# 이진 검색이란? 정렬되어 있는 자료 구조에서 중앙값과의 크고 작음을 이용해서 데이터를 검색하는 알고리즘 

datas = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] # 정렬 된 데이터 리스트를 입력

search_data = int(input('찾으려는 숫자를 입력 : ')) # datas list 중 찾으려는 값 입력 
search_result_index = -1 # 찾으려는 값의 인덱스 변수를 -1로 초기화 

start_index = 0 # 시작 index 초기화
end_index = len(datas) - 1 # 끝 index를 datas 리스트의 길이만큼 초기화
mid_index = (start_index + end_index) // 2 
mid_value = datas[mid_index]
...


다 적을 수는 없어도 최대한 주석을 작성해서 왜 이런 코드를 작성하는지 생각해 보자는 취지로 한번 제안을 해봤어요. 다 적는건 선택사항이고 알고리즘에서 중심이 되는 코드에 대한 것만 주석으로 설명하면 좋을 것 같아요.





4. 우리가 써야 할 툴

https://velog.io/

https://github.com/

이외에도 추가되면 업데이트 하겠습니다.




22년 5월 9일 업데이트

  • 5월 9일자 수행한 코드를 각자의 branch에 commit, push 후 merge 하였습니다. 앞으로도 이러한 방식으로 할 예정입니다.
  • KPT 회고를 트렐로에서 깃허브에 있는 Projects 기능을 사용하려고 합니다. 이유는 다른 위치에 있는 툴을 써서 이리 저리 왔다갔다 하는 것 보다 하나의 툴에 있는 기능들을 최대한 써보기 위함 입니다.

About

제로베이스 로컬호스트 팀 알고리즘 스터디입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •