알고리즘을 공부하고 싶은데 책 좀 추천해주세요

kkb의 이미지

알고리즘을 제대로 공부하고 싶습니다

일단 현존하는 알고리즘들을 충분히 이해하고

현존하는 알고리즘들을 이해하고 잘 이용하는데에만 그치지 않고
저의 필요에 맞게 응용할 수 있고
좀 더 나아가 제가 좀 더 개선된 알고리즘을 스스로 만들어 볼 수 있을 만큼의 수준까지 공부하고 싶습니다

물론 많이 어려울 거 같습니다 불가능하거나 무모할 수도 있습니다
현재에도 충분히 좋은 알고리즘들이 많이 나와 있으니까요
그래도 위의 목표를 못 이루더라도 위의 목표를 향해서 열심히 하다보면
최소한 어느 정도 실력은 될 것이라고 생각합니다

일단 지금은 쉽게 시작하려고 합니다
기초적인 알고리즘 책으로 시작해 수준있는 알고리즘 책까지 보려고 하는데
책을 좀 추천해주셨으면 좋겠습니다

기초적인 알고리즘 책은 1~2권 정도 보고
수준 있는 책을 1권 천천히 보려고 합니다
최종적으로 2~3권인데 책을 아주 많이 볼 생각은 없습니다
다른 책 볼 것도 너무 많아서..;

일단 기초적인 알고리즘 책으로...

C로 배우는 알고리즘 1,2 (이재규)(세화)
http://www.yes24.com/24/goods/18003
기초적인 알고리즘 책으로 많이 팔린 책인거 같습니다 대학교재인건지 사람들이 엄청 많이들 보는거 같던데
사실 그책이 이책이 맞는지 모르겠습니다 리뷰는 엄청 많더군요

알고리즘이 보이는 그림책 (일본)(성안당)
http://www.yes24.com/24/goods/2716581
그림 등으로 쉽게 쓰여진 책인거 같습니다 일본 책이고 그림책 시리즈로 유명한 거 같던데 잘 모르겠습니다

열혈강의 자료구조 (이상진)(프리렉)
http://www.yes24.com/24/goods/3670039
잘 모르겠지만 많이 팔린 책이더군요

뇌를 자극하는 알고리즘 (박상현)(한빛미디어)
http://www.yes24.com/24/goods/3524901
이 책도 쉽게 쓰여진 책 같습니다

C로 구현한 알고리즘 (Kyle Loudon)(오라일리)(한빛미디어)
http://www.yes24.com/24/goods/119652
책이 어떤지 잘 모르겠지만 오라일리 책인 만큼

Programming Challenges (알고리즘 트레이닝 북)(한빛미디어)
http://www.yes24.com/24/goods/1396784
일반적인 알고리즘 책은 아니고 알고리즘 능력을 키우기 위해 여러가지 문제들에 대해 생각해보며 트레이닝을 하는 컨셉으로 쓰여진 책인 거 같습니다 이런 책이 실제로 도움이 많이 되는지는 모르겠네요

수준있는 알고리즘 책으로...

Introduction to Algorithms (Thomas H. Cormen)(MIT press)(한빛미디어)
http://www.yes24.com/24/goods/1488338
1312페이지나 되고 알고리즘의 바이블처럼 유명한 책으로 알고 있습니다
처음부터 보기에는 좀 무리가 있을 거 같습니다

The Art of Computer Programming (도널드 커누스)(한빛미디어)
http://www.yes24.com/24/goods/2149593
저자가 어마어마하게 유명한 사람이고 이 책도 엄청 유명한 것으로 알고 있습니다
그런데 조금 읽어보니까 제가 생각하는 쪽의 알고리즘 책은 아니고 내용도 엄청 어려워서 과연 읽을 수나 있을지 모르겠네요
읽으면 좋겠죠 도움도 많이 될테고 솔직히 이런 책을 읽고 싶은 건 아닙니다

지금 생각에는 C로 배우는 알고리즘 1,2을 일고
Introduction to Algorithms을 읽을까 하는데
조언이나 책에 대한 평이나 이외에 좋은 책이 있으면 추천 부탁드립니다

rgbi3307의 이미지

처음에 쉬운 책으로 C언어와 자료구조, 알고리즘을 공부하면서,
C언어 제어문, 포인터, 재귀호출, 구조체 개념을 확실히 익히시고,
스택, 큐, 링크드리스트, Binary Search Tree, AVL, Red-Black Tree, BTree, Graph... 등의
자료구조와 알고리즘을 익혀두시면 응용하실때 많은 도움이 될듯합니다.
그리고, 저도 Introduction to Algorithms 책은 꾸준히 반복해서 학습하고 있습니다만,
확실히 알고리즘의 바이블이라 할 수 있습니다.
다만, 수학 수식으로 설명하고 있으므로 이산수학(Discret Mathmatics)공부도 병행하시면,
알고리즘을 좀더 논리적으로 정립하고 새로운 방향으로도 연구할 수 있들듯 합니다.

From:
*알지비 (메일: rgbi3307(at)nate.com)
*커널연구회(http://www.kernel.bz/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))

maxyun의 이미지

.

ShaYEL의 이미지

들어왔다가 되려 좋은 책 추천받고 가는군요ㅎㅎ 감사합니다.

Introduction to Algorithms 좋은 책입니다. 문제는 다 풀지 못하더라도 거기 나온 개념과 예로 들어준 예시들만 어느 정도 기억하면 충분히 나 알고리즘 배웠다고 당당히 말하고 다니셔도 될 겁니다.

raymundo의 이미지

북마크하기 위한 리플 달고 갑니다... ^^;;;

좋은 하루 되세요!

익명 사용자의 이미지

한 가지 빠진 것 같은데, Foundations of Algorithms 라는 책이 있습니다.
제가 처음 알고리즘을 공부할 때 본 책인데 굉장히 좋은 책입니다.

Introduction to Algorithms 이 처음부터 보기 힘들다는 것은 확실히 맞습니다. 내용 자체도 굉장히 방대하고
수학적인 내용이 꽤나 심도있게 다뤄지기 때문에 처음 시작은 Foundations of Algorithms 이 좋습니다.

저의 경우 대학에서도 이 책을 교재로 쓰는걸 보았습니다. 여러모로 굉장히 유명한 책이고 또한 얇은 책이기 때문에
시작으로 더없이 좋습니다. 제가 이 책을 처음 본 건 중학생 때인데, 그 당시에도 이해가 참 잘 되고 괜찮았던 책으로 기억합니다.

litiblue의 이미지

제 생각에도

"""
현존하는 알고리즘들을 이해하고 잘 이용하는데에만 그치지 않고
저의 필요에 맞게 응용할 수 있고
좀 더 나아가 제가 좀 더 개선된 알고리즘을 스스로 만들어 볼 수 있을 만큼의 수준까지 공부하고 싶습니다
"""

라는 목표를 위해선

Foundations of Algorithms 가 좋다고 생각합니다.

물고기를 잡아주기 보다, 물고기를 잡는법을 가르쳐주는 책입니다.

--

그리고 topcoder를 추천 합니다.

^^

IsExist의 이미지

아래 책도 추천합니다.(LISP 나 Scheme 지식이 필요할 수 있음)

Structure and Interpretation of Computer Programs

---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치

세벌의 이미지

HDNua의 이미지

북마크합니다.

저는 이렇게 생각했습니다.

tky7068의 이미지

참고되었습니다. 감사합니다. ^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.