ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 기업 코딩테스트 준비 방법 , 알고리즘 공부 방법
    알고리즘/etc 2020. 9. 17. 22:59
    반응형

    0. 글을 시작하기에 앞서 

     

    이 글을 쓰기 전에 고민을 많이 했습니다. 코딩테스트 이렇게 준비하세요 ~ 알고리즘 이렇게 공부하세요~ 할 정도의 실력자가 아니기 때문에 많이 망설였던 것 같습니다. 그래도 최근 많은 분들이 취업 후기 보고 코딩테스트 준비 방법에 대해 물어보셔서 부족한 실력이지만 이 실력까지 오게 된 과정을 설명해 보려 합니다. 

     

    1. 코딩테스트란? 

    코딩테스트는 최근 많은 기업에서 시행하고 있는 시헙입니다. 개발직무를 수행하기 위한 역량을 평가하는 테스트라고 생각하시면 됩니다. 유형은 알고리즘 문제 풀이가 대다수입니다. Input을 넣으면 문제의 조건대로 구현하여 알맞은 정답(output)을 출력하는 코드를 작성하면 됩니다.

     

    2. 글쓴이의 실력 

    저는 대학교를 다니는 동안 PS(Problme Solving) 대회 입상을 하고 싶어서 얕게나마 준비를 하였습니다.

    하지만 교내 대회조차 수상을 못했던 실력입니다.

    그래서 제 실력을 스스로 평가해보자면 , 기업의 코딩테스트는 뚫을 수 있으나 대회 입상은 힘든 실력 인것 같습니다. 

     

    제가 지원한 기업 중 코딩테스트가 있었던 기업은 다음과 같습니다.

    - 2019년 상반기 삼성전자(인턴)

    - 2019년 하반기 CJ올리브네트웍스

    - 2019년 하반기 SK 하이닉스 

    - 2019년 하반기 NHN

    - 2019년 하반기 카카오 (1차 , 2차)

    - 2019년 하반기 네이버

    - 2019년 하반기 삼성전자 

     

    저는 이 중 제일 마지막 , 2020년 하반기 삼성전자 시험 제외하고 모든 코딩테스트를 합격하였습니다. 

    삼성전자 시험이 아쉬움이 많이 남네요,, 너무 자만했던 것 같습니다. 

     

    3. 공부 방법 

    제가 처음 알고리즘이라는 분야를 접한 것은 대학교 2학년 여름방학, 동기들과 함께한 스터디에서입니다. 

    그 스터디는 자료구조 공부 겸 알고리즘 스터디였는데 백준 사이트를 이용해 진행했습니다. 

    알고리즘을 많이 접해본 선배가 리드를 해줬고 많이 배웠습니다. 

    사실 스터디를 되게 못따라 갔었습니다. 좌절을 가장 많이 했던 시기였습니다. 

     

    스터디 진행 방법은 매주 주제를 정하고, 그 주제에 대한 이론 설명을 한 뒤(잘 아는 한사람이 해줘도 좋고 돌아가면서 해도 좋습니다.) 백준에서 그 주제와 관련된 문제들을 골라 문제집을 만들어 풀어 나가는 것입니다. 차주에는 전 시간에 풀었던 문제들의 풀이 방법을 공유하는 시간도 가졌습니다. 

     

    두 번째 공부 방법은 백준 온라인의 강의 수강이었습니다. 백준 사이트에 들어가시면 강의를 신청하실 수 있습니다. 온라인 강의도 있고 오프라인 강의도 있는데 저는 오프라인 강의를 수강하였습니다. 

    백준 강의의 가장 큰 장점은 적은 시간에 많은 양의 문제를 접할 수 있는 것이었습니다. 

    최백준님이 찝어주신 문제를 얻을 수 있는 것도 덤이겟죠

    수업은 이론설명 + 문제 풀이로 진행되었는데 이 때 문제 풀이는 구현을 끝까지 해서 AC(통과)를 받는 방식이 아닙니다. '이 문제는 ~~를 이용하여 ~~하게 해결하시면 됩니다'와 같이 풀이 방법만 알려주실 뿐입니다. 집에 돌아가 직접 구현해 보는것은 학생의 몫이겠죠 

    그래서 이 수업의 장점은 적은 시간에 많은 양의 문제의 풀이법을 알아갈 수 있다는 것입니다. 

    알고리즘을 공부하시다 보면 굉장히 많은 문제들이 패턴화 되어있음을 느낄 수 있었습니다. 이렇게 단시간에 많은 문제의 풀이를 보다보면 문제의 패턴을 익힐 수 있게 됩니다. 

     

    세 번째 공부 방법은 삼성 SDS 대학생 알고리즘 특강입니다. 

    오전 9시부터 저녁 6시까지 삼성 SDS에서 알고리즘 강의를 듣는 특강인데요, 이론도 알려주고 문제풀이도 같이 진행합니다. 제가 느낀 가장 큰 장점은 우선 9시간동안 강제로 알고리즘을 하게 된다 였습니다. 의지가 나약해 질 일이 없죠 ㅎㅎ

    또한 SDS의 SW검정시험 중 B형(프로)시험을 응시할 수 있는 기회를 주십니다. 합격하면 채용 과정에서 우대가 있는 것으로 알고있습니다(코딩테스트 제외였나? 정확하진 않습니다)

     

    4. 알고리즘 문제 풀이 사이트 

     1) 백준 온라인 저지 

    - 알고리즘 문제풀이의 조상 같은 사이트입니다. 

    - 정말 많은 양의 문제가 존재합니다. 

    - 문제의 난이도 파악이 힘들다면 solved.ac 를 이용해보세요

    www.acmicpc.net/

     

    Baekjoon Online Judge

    Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.

    www.acmicpc.net

    2) 프로그래머스 

    programmers.co.kr/

    - 양질의 문제가 많다고 느껴지는 사이트입니다. 

    - 스킬레벨체크, 도전해보세요 좋은 것 같습니다

     

    프로그래머스

    코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

    programmers.co.kr

    3) leetcode

    leetcode.com/

    - FAANG (Facebook, Amazon, Apple , Netflix, Google (맞나요?)) 준비하시는 분들이 많이 사용하시는 걸 보았습니다. 

    - 자료구조스러운 문제들이 많았던 기억이 납니다,,,

    - 개인적으로 회사에서 SQL 작성능력이 좀 부족해 이 사이트에서 SQL 문제를 풀었습니다. SQL 문제가 제공되는 사이트가 많지 않아 이 부분에서 많은 도움이 되었습니다

     

    LeetCode - The World's Leading Online Programming Learning Platform

    Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

    leetcode.com

    4) 코드포스

    codeforces.com/

     

    Codeforces

     

    codeforces.com

     

     

    반응형

    댓글

Designed by Tistory.