▶ 온라인 저지 (Online Judge)
프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳
- lavida.us online judge
- Baekjoon Online Judge
- 알고리즘 트레이닝 사이트
- ALGOSPOT
- UVA online judge
- LeetCode online judge
▶ 알고리즘 추천 도서
- 프로그래밍 대회에서 배우는 알고리즘 문제 해결 전략
- 문제로 풀어보는 알고리즘 : 프로그래밍 트레이닝 Q&A
- 알기 쉬운 알고리즘
- 뇌를 자극하는 알고리즘
- 알고리즘이 보이는 그림책
- 이렇게 하면 나도 프로그램을 잘 만들 수 있다 알고리듬은 어떻게 만들까
- 파이썬을 이용한 알고리즘 구현
- Introduction to Algorithms, third edition
- 미래를 바꾼 아홉가지 알고리즘 [컴퓨터 세상을 만든 기발한 아이디어들], 페이스북 그룹 [생활코딩] 관리자 이고잉 님 추천.
- https://algospot.com/calendar/
알고스팟 사이트 자체도 괜찮구요. 캘린더 들어가 보시면 알고리즘 대회 스케쥴이 있어요. 가볍게 참가 해 보시면 어느새 열정적으로 하고 있는 자신을... 주로 스케쥴 잡혀있는게 코드포스 랑 탑 코더 인데 둘다 굉장히 짧은 주기로 자주 열고 있습니다. (2-3주) 시차 감안해서 시간 될 때 얼마든지 참가 가능하구요. 코드포스는 제가 알기론 러시아 사이트 인데 문제 풀 때 번역기를 돌려도 이해가 좀 어렵지만 탑코더도 문제가 영어라 문제 이해를 하는데 시간이 조금 걸리더라구요. - http://www.topcoder.com/
탑코더는 정말 유명하죠. 스폰하고 있는 기업만 보더라도 그 위치가 어느정도 인지 알수 있습니다. 들어가자마자 뜨는 합격 수기 같은거 보면 살짝 흥분도 되죠. 디자인하고 소프트웨어, 머신러닝 세가지 주제로 운영중이고 재밌는게 SW 클라우드 소싱을 제공합니다. 이 안에서 할수 있는게 굉장히 많죠. 말씀하신 알고리즘도 안에 있어서 이 안에서 오래 머물 수 있습니다. 알고리즘 하다 지겨우시면 클라우드 소싱을 통해 직접 돈도 버실수 있죠. 능력에 따라 벌수 있는 돈은 천지차이로 나열되어 있습니다. 이 자체로도 충분한 동기부여가 될수 있죠. - https://www.hackerrank.com/contests
이전에 페이스북 개발자 채용에 한 과정이였는지 확실하지 않은데 페이스북 퍼즐 문제 가 있었습니다 지금은 문을 닫았는데 문을 닫고 내놓은 링크가 이 사이트 입니다. 알고리즘 패턴 별로 굉장히 잘 정리되어 있어서 원하는 유형의 문제를 풀고자 할때 굉장히 좋아요. 사이트 자체 규모가 어느정도 인지는 모르겠으나 한국인은 거의 없는 거 같더군요. 문제별 랭킹도 제공하고 토탈 랭킹도 있습니다. 웹에서 컴파일하고 결과 볼수 있는 사이트들이 많듯이 여기도 원하는 언어로 문제 풀고 바로바로 결과를 피드백 받아볼 수 있어요. 처음하실 때 인풋이 어떻게 들어오는가를 잘 보셔야 합니다. 로컬에서 똑같이 했을 때는 되는데 통과를 못하는 경우가 종종 생기더라구요. 페이스북과 이 사이트의 관계는 잘 모르겠으나 관계 상관없이 정말 좋은 사이트라고 생각됩니다. - http://www.comp.nus.edu.sg/~stev.../visualization/index.html
싱가폴에 한 대학교 에서 만든거 같은데 아예 모르는 경우나 알고 있다가 까먹은 경우나 두가지 모두 유용하게 사용할수 있는 사이트 입니다. 알고리즘 자체도 psuedo code로 간략하게 설명해 놓았고 어떻게 돌아가는지 직접 확인 가능합니다. (첨언 : 아래의 VisualGo 와 동일한 사이트입니다.)
- Coursera의 알고리즘 강의
프린스턴의 Robert Sedgewick & Kevin Wayne - part 1
프린스턴의 Robert Sedgewick & Kevin Wayne - part 2
스탠포드의 Tim Roughgarden - part 1
스탠포드의 Tim Roughgarden - part 1[출처] 알고리즘 학습 자료 모음|작성자 낙투르
- Berkley
Data Structure 강의 (Youtube)[출처] 알고리즘 학습 자료 모음|작성자 낙투르
- MIT Opencourse ware의 알고리즘 강의
http://www.snow.or.kr/lecture/applied_sciences/computer_science/532.html?hc_location=ufi - MIT introduction to Algorithms 강의
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/lecture-videos/
▶ PDF / Website
▶ 기타 추천 사이트
- Coding is fun
장원영 님께서 직접 제작하신 사이트. 알고리즘을 배우기 보다는 한국 정보 올림피아드 기출문제를 푸는 편이라고 합니다. - 구글 코드 잼
구글 코드잼은 구글에서 매년 진행하는 알고리즘 경진대회입니다. 아웃사이더 님의 참가 후기를 읽어 보시는 것을 추천합니다. - 프로젝트 오일러
프로젝트 오일러 (ProjectEuler.net) 는 수학적인 문제들을 컴퓨터 프로그래밍으로 하나씩 해결해가는 퀴즈 풀이 사이트입니다. 프로젝트 오일러 코리아 사이트 (Project Euler @ kr) 에서는 보다 많은 이들이 쉽게 접근해서 즐길 수 있도록 원본 문제를 한국어로 번역해서 제공합니다. - VISUALGO
: VisuAlgo 는 2011년 Steven Halim 박사가 자신이 가르치는 학생들이 데이터 구조와 알고리즘을 좀 스스로 이해하고, 자신만의 학습속도에 따라서 공부할 수 있도록 하기 위해 고안한 것입니다. 싱가폴 국립대학교의 학생들과 함께 간단한 정렬 알고리즘부터 복잡한 그래프 자료구조, 알고리즘, 문자열+위상 알고리즘까지 통합한 시각화된 자료들을 개발했습니다. - http://coderbyte.com
: Coderbyte 는 다양한 프로그래밍 문제 모음을 통해 프로그래밍을 연습하고 기술을 향상할 수 있도록 도와주는 웹 어플리케이션입니다. 문제들은 다양한 난이도로 제공하고 있으며 온라인 어플리케이션 내에서 학습할 수 있도록 되어 있습니다. 아무것도 다운로드 하거나 업로드할 필요가 없습니다. Javascript, Python, Ruby, PHP, Java, C++ 등의 언어로 문제를 풀어볼 수 있습니다. - http://www.checkio.org/
: 알고리즘을 게임 형식으로 좀 더 재미있게 공부할 수 있게 해주는 사이트이며, 한글 인터페이스가 제공됩니다. 문제를 풀면 좀 더 어려운 문제를 푸는 스테이지(stage)가 열립니다. - 알고리즘 오픈마켓
: 알고리즘을 사고 파는 시장! - 코딩 도장
: 코딩 도장은 프로그래밍 문제풀이를 통해서 코딩 실력을 수련(Practice)하는 곳입니다. - What makes good programmer
: 좋은 프로그래머가 되기 위해 알아야 할 것들 (컬럼) - API Academy
: '좋은 API 만드는 방법'을 배우는 온라인 학습 사이트