알고리즘 공부하기 좋은 온라인 저지 사이트 추천

 

Online Judge

개발자를 채용할 때, 보통 1차로 시행하는 것이 코딩테스트입니다. 코딩테스트에서는 알고리즘을 이용한 코드 작성을 시험합니다. 요즘은 단순히 문제를 잘 푸는 것뿐만 아니라 런타임과 메모리 사용량도 중요한 요소입니다.

이 모든 것을 연습하고, 공부하기 좋은 Online Judge 사이트를 소개합니다.

LeetCode

해외 온라인 저지 사이트 중 제가 애정하는 LeetCode 입니다. 사이트도 굉장히 깔끔하고, 지원하는 프로그래밍언어도 다양하며 사용도 어렵지 않아서 해외사이트 중에서 제일 추천하는 곳입니다. 단점이라면, 알고리즘 문제 수가 1,000개정도로 적다는 점입니다.

알고리즘 문제는 Easy, Medium, Hard 총 3개의 난이도로 나뉘어져 있습니다. 그리고 정답률을 볼 수 있습니다.

1

문제의 내용과 Input, Output 예시를 본 뒤, 사용할 언어를 선택 후 코드를 작성하게 됩니다. Testcode을 입력하여 Input을 변경할 수도 있습니다.

간단하게 709번 문제를 자바스크립트로 풀어보았습니다.

2

Submit을 하여 제출을 하면 성공 여부와 함께 런타임, 메모리사용량을 보여줘서 코드의 질을 점검해 볼 수 있습니다.

3

SW Expert Academy

삼성이 운영하는 온라인 저지 사이트 SW Expert Academy 입니다. 사용할 수 있는 프로그래밍언어는 C++, Java, Python 총 3개로 적은 편이지만, 문제의 수는 7,000개정도로 많습니다.

4

LeetCode 와 다른 점은 런타임시간과 메모리 요건이 처음부터 정해져있다는 점입니다.

5

Programmers

현재 기업에서 코딩테스트를 할 때 가장 많이 사용하는 Programmers 입니다. 난이도는 5가지로 나뉘어져 있고 사용가능한 언어가 다양합니다.

8

코드와 콘솔을 사이트에서 바로 작성, 확인할 수 있습니다. 문제를 제출하기 전에는 다른 사람의 풀이를 볼 수 없다는 점이 특이합니다.

9

Baekjoon Online Judge

국내 사이트 중 제일 유명한 백준온라인저지 입니다. 이 사이트의 장점은 각종 대회, 채용 코딩 테스트 문제도 풀어볼 수 있으며, 다양한 난이도의 문제가 약 16,000개나 있다는 점입니다.

6

위에 소개한 Programmers, LeetCode 처럼 코드를 바로 실행하고, 출력을 볼 수 있는 친절한 사이트는 아닙니다. 문제를 보고, IDE에서 문제를 풀어본 뒤, 사이트에 제출을 하면 성공여부를 알려주는 방식입니다.

7

Coderbyte

해외 온라인 저지 사이트를 LeetCode 외에 이용하고 싶다면 추천하는 사이트인 Coderbyte 입니다. 코드를 입력하고, 콘솔에 출력되는 기능도 제공하고 있으며 코드를 제출하지 않아도 솔루션을 볼 수 있어서 초반에 너무 막막할 때 사용하기 추천합니다.

10

마치며

총 5개의 온라인 저지 사이트를 소개하였습니다. 알고리즘, 개발 공부에 도움이 되길 기대합니다.

온라인 저지 사이트를 이용하여 하루에 5개 정도의 문제를 푸는 것은 공부에 정말 도움이 됩니다. 어느 사이트를 이용하든 작성한 코드풀이는 깃이나 개인블로그에 정리하는 것을 추천합니다.