프로그래밍/알고리즘

알고리즘 연습 사이트

Dannian 2020. 10. 30. 16:00
반응형

현재 사용하고 있는 알고리즘 사이트 종류 정리입니다.

이 사이트들에서 직접 풀거나, 자료를 찾으면서 더욱 효율적인 코드들 위주로 정리를 합니다.

언어는 C/C++, C#, Java, Javascript, Python, Swift위주로 합니다.

 

1. Codewars

 

Codewars: Achieve mastery through challenge

Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential.

www.codewars.com

개인적으로 여러 알고리즘 사이트 중에서 가장 재미있는 것 같습니다.

회원가입을 할 때 언어를 정하고, 매우 기본적인 코드를 작성하면 회원가입이 승인됩니다.

그 후 프로필을 설정 할 때 Clan을 정할 수 있는데, 소속 회사(또는 그룹)을 적음으로서, 동일한 Clan에 있는 사람들을 Allies에서 확인 할 수 있고, 그 사람들의 현재 Kyu(레벨) 등을 비교하면서 자극을 받을 수 있습니다.

또한 문제를 풀고 나서 다른 사람들이 푼 코드를 보면서 효율적으로 코드를 짜는 것에 대해서 공부를 할 수 있습니다. (물론 실무에서 과도하게 줄여서 짜면 주니어급 개발자나 다른 사람들은 못 알아 볼 수도 있으니, 연습한다고 생각하는게 좋을 것 같습니다.)

(제가 다녔던 곳들은 모두 스타트업들이라 개발자들이 많지가 않아서 비교가 안되네요... 다니시는 분들은 넘사벽 경력이고ㅠㅠㅠ)

 

2. Programmers

 

프로그래머스

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

programmers.co.kr

이직 또는 신입으로 회사에 입사 할 때 많이들 보게되는 곳입니다.

일단 제가 본 것 기준으로 네이버(신입), 쿠팡(신입), 카카오 모빌리티(경력), 카닥(경력) 등에서 사용했습니다.

로그인을 한 후 상단에 보면 '코딩테스트 연습'이라는 메뉴에 '코딩테스트 고득점 Kit'가 있는데, 개인적으로 본 문제들 중에서 이런 문제들의 기출변형이 많이 나왔습니다.

사실 실무에서 특히 FE를 할 경우 알고리즘을 사용할 경우가 거의 없다보니 경력 이직 때 방심하고 있다가 이런 문제들이 나오면 풀 수는 있지만, 시간을 많이 뺏기는 경우가 종종 있었는데, 이 사이트에서 수시로 다시 풀어보면서 감을 유지하는 것도 좋은 방법이라고 생각합니다.

개인적으로 조금 아쉬운건, Swift가 없는 문제들이 좀 있어서 아쉽네요.

(사실 이 부분은 다른 언어로 푸니까 상관은 없지만... 아무래도 iOS 개발자다보니 다른 언어는 퍼포먼스가 상대적으로...)

그 외에도 SQL 고득점 Kit의 경우 쿼리 공부도 할 수 있기 때문에 개인적으로 좋다고 생각하는 사이트입니다.

 

3. LeetCode

 

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

여긴 아직 자주 사용해보지는 않았는데, Codewars와 함께 영어를 공부하면서 코딩 공부도 하기 좋다고 생각하는 사이트입니다.

사실 국내에서 개발을 할 때는 상대적으로 영어가 필수는 아니지만, 아무래도 구글링을 하다보면 영어로 된 답변들이나 질문들이 대다수이기 때문에 자료를 찾는데에는 어느 정도 영어 실력이 필요하다고 생각합니다.

내가 영어가 좀 부족한 것 같은데 시간이 많지 않으니 알고리즘 공부와 같이 하고싶다고 생각하시면, Codewars와 LeetCode를 추천해봅니다.

 

4. HackerRank

 

HackerRank

HackerRank is the market-leading technical assessment and remote interview solution for hiring developers. Learn how to hire technical talent from anywhere!

www.hackerrank.com

카카오 코딩테스트 하면서 알게된 사이트입니다.

문제는 기본적으로 영어로 나오고, 코테때는 한글로 일단 나왔었어요.

여기는 다른 곳 보다 시간 복잡도 관련해서 신경을 많이 쓰게 되는 것 같아요. 특히 리더보드에 시간복잡도별 랭킹이 나오는데, 그걸 볼 때마다 한 번 더 신경을 쓰게 되더라고요.

 

 

--------------------차후 내용이 수정되거나 추가될 수 있습니다.--------------------

 

Dannian의 블로그입니다.

 

반응형