1. 본격적인 코딩테스트 준비 전에 해야할 공부


자료구조, 어느정도 숙련된 프로그래밍 언어 1개 (자바나 파이썬), 시간복잡도 공간복잡도 개념 등




2. 코딩테스트에는 어떤 언어를 선택해야 하나?


자바 백엔드 기준으로 쓰겠음


결국 자바나 파이썬 둘중에 하나를 선택하게 될텐데


장단점을 적어봄


자바


장점 : 자바 백엔드를 준비하면 자바에 익숙하다보니 익숙한 언어를 사용한다 + 파이썬 추가 공부가 필요없다


또 가끔가다가 코딩테스트 언어를 자바로 제한하는 곳들이 있음




단점 : 일단 가장 큰 단점이 대부분의 코딩테스트는 구글링과 IDE 사용이 금지됨. 즉 코딩테스트를 보면서 너가 직접 다 타이핑해야 된다는 소리


자바가 파이썬에 비해 굉장히 장황하기 때문에 코딩테스트에서는 확실히 큰 단점임


특히 코딩테스트는 대부분 나오는 문제들이 구현문제이고 시간싸움인 경우가 대부분임 이런 점에서 자바는 확실히 안 좋긴 함


파이썬은 이거 반대라고 생각하면 됨 


사실 코딩테스트 문제푸는 것에만 초점을 맞추면 파이썬만한게 없음


다만 위에서 언급했듯이 가끔가다 언어를 자바로 제한하는 경우가 있긴 함


솔직히 파이썬 문법 익히는건 금방 함




근데 결국 알고리즘 문제 푸는건 네 머릿속에 있는걸 어느 언어로 풀어내느냐의 차이일 뿐이지 언어 자체가 크게 중요한건 아님(답만 맞으면 되기 때문)


참고로 나는 자바로 코딩테스트를 봤고 웬만한건 다 통과할 수 있음


애초에 코딩테스트로 나오는 문제들은 그렇게 어려운 문제들이 나오진 않음 언어는 취향껏 선택하면 됨




3. 어느 걸로 공부해야 하나?


나는 이것이 취업을 위한 코딩테스트다 이 책으로 공부했는데


블로그로 해도 되고 다른 책으로 해도 됨


블로그는 


https://blog.encrypted.gg/category/%EA%B0%95%EC%A2%8C/%EC%8B%A4%EC%A0%84%20%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98?page=2


https://blog.naver.com/kks227


이런 곳들이 있고


코딩테스트로 나오는 알고리즘은 다 비슷한것들만 나와


그래서 어느걸로 공부해도 크게 상관은 없어


책 목차만 보고 검색해서 해도 됨


카카오에 어려운 알고리즘들도 나온다고 하는데 그런 문제들은 안 풀어도 충분히 붙을수 있음


그런 어려운 알고리즘 공부할 시간에 쉬운 문제들을 정확하고 빠르게 푸는게 훨씬 중요함



문제는 프로그래머스에서 카카오 기출문제들이랑 백준에서 실버~골드 티어들 풀면 됨


https://solved.ac/


에서 백준 난이도랑 주제별 등 필터해서 문제 풀 수 있음



결국 코딩테스트는 문제 많이 풀어보고 풀어본 문제 피드백 하고 계속 해야함(구글에 백준 문제는 검색하면 대부분 풀이법이 나옴)


안 풀리는 문제는 얼마나 고민해야하나 이런 문제는


나같은 경우는 내 머릿속으로 생각해볼 수 있는 건 전부 생각해보고도 모르겠으면 답을 보고 했는데


이거는 취향차이라 생각함 결국 문제 풀고 고민하고 한 시간의 총량에 실력은 결국 비슷해진다고 생각하기때문에


그리고 아직 준비가 덜 됐어도 코딩테스트 신청해서 계속 모의고사 보듯이라도 보는걸 추천 이게 그냥 설렁설렁 백준 문제 푸는거랑 캠키고 제한된 상황에서 시간 재면서 테스트 보는건 다르기때문에 미리 경험해보는게 좋음


또 팁을 주자면 적절한 난이도 선택이 중요함 쓸데없이 제대로 이해도 못하면서 어려운 문제 푼다고 실력이 빨리 느는게 아님 마찬가지로 너무 쉬운 문제도 마찬가지고