Cormen 이외의 알고리즘에 대한 예약


21

Cormen의 Intro to Algorithms 책에서 대부분의 자료를 완성했으며 Corman의 저서 이외의 자료를 다루는 알고리즘 책을 찾고 있습니다. 추천 사항이 있습니까?

참고 : 나는 이것을 stackoverflow에 요청했지만 대답에 너무 만족하지는 않았습니다.

참고 : 대부분의 의견을 보면서 이상적으로는 이 과정 설명 에서 787 과정의 내용을 다루는 책을 찾고 싶습니다 .


1
카베

1
@Kaveh 나는 Tardos를 이미 읽었다.
유진

1
"알고리즘 소개"는 알고리즘 설계 및 분석의 범위에서 거의 모든 것을 다루며 학부 및 대학원 수준의 과정에서 세계에서 가장 인기있는 교재입니다. 각 장은 관련 자료에 대한 간결한 소개를 제공하며 마지막에 추가 연구를위한 참고 문헌 목록이 매우 많습니다. 그래프 알고리즘, 복잡성 이론 등과 같은 특정 주제에 대한 심층적 인 이해가 필요하다고 생각되는 경우 가장 좋은 방법은 책의 참고 문헌을 살펴 보는 것이 도움이되지 않으면 도메인 전문가에게 조언을 구할 수도 있습니다. 특정 지역.
알리

12
"알고리즘 소개"는 알고리즘 설계 및 분석의 범위에있는 거의 모든 것을 다룹니다 .
JeffE

5
내가 정말 좋아하는 한 권의 책은 Udi Manber의 알고리즘 소개 : 창의적인 접근 방식 입니다. 다른 대부분의 교과서와는 달리, 그는 방법을 배울 자신에 알고리즘. 교과서에서 다루는 각 알고리즘에 대해, 그는 가장 진보 된 접근법을 설명하는 첫 번째 방법과 이전 알고리즘의 실수를 바로 잡는 각 시도에 대해 점점 더 많은 섹션의 진행을 제공합니다. 내 의견으로는 훌륭한 텍스트입니다.
Vinayak Pathak

답변:


9
I am looking for an algorithms book that covers material beyond Corman's book.

이것은 당신이 원하는 것을 넘어서서 다양한 방법으로 대답 할 수 있습니다. 도움이되는 구체적인 답변을 얻을 가능성이 높으므로보다 구체적인 지침을 요청하는 것이 좋습니다. 그래도 일반적인 지침은 다음과 같습니다.

  • 당신은 코만보다 더 깊이 일반적인 알고리즘 주제를 탐구 일반 도서의 소수를 찾을 수 있지만, 대부분의 경우, 당신은 책이 될 것입니다 경우 전문 시작해야 훨씬 깊이에 더. 그렇지 않으면 부풀어 오르고 유용성이 떨어질 수 있습니다.
  • 대신 특정 주제를 찾으십시오. 특정 주제에 초점을 맞추면 많은 고급 자료가 있습니다. 다음에 관심이 있습니까?
    • 정렬 알고리즘?
    • 문자열 알고리즘?
    • 수 이론 알고리즘?
    • 매트릭스 알고리즘?
    • 그래프 알고리즘?
    • 기하학적 알고리즘?
    • 양자 알고리즘?
    • 확률 론적 / 무작위 화 알고리즘?
    • 선형 프로그래밍?
    • 계산 모델?
    • 기초 복잡성 이론과 알고리즘?
  • 자체 알고리즘을 도출하는 방법을 이해하려면 조사중인 문제 공간에 사용 된 알려진 데이터 구조를 이해하는 데 중점을 두어야합니다 (따라서 기존 지식의 깊이를 얻음). 계산. 이것들은 주어진 문제에 대해 가능한 직관적 인 느낌을 줄 것이며, 하한을 공식적으로 증명하기가 어려운 경우에도 어떤 접근법이 더 나은 성공을 거둘 수있을 것입니다.

Papadimitriou의 몇 가지 또는 복잡성 이론에 관한 Arora / Barak와 같은 책은 가능한 알고리즘을 더 잘 이해하고 직관을 구축하기 위해 Corman에 대한 후속 조치를 제안합니다. 그러나 특정 분야에 대한 현대 개요 논문을보고 졸업하고 현대적인 수준의 이해에 익숙해지기를 원하는 경우 더 구체적인 주제에 대한 연구 수준의 책


1
당신은 아주 좋은 질문을합니다. 나는 수 이론 알고리즘에 관심이 있으므로 Bach와 Shallit의 알고리즘 수 이론을 이미 보았습니다. 그래도 Cormen 이외의 알고리즘 개발 기술을 구축 할 책을 찾고 있습니다.
유진

1
나는 깊이를 찾지 않고 폭을 찾고 있습니다. 근본적인 복잡성 이론이 아니라 내가 들었던 알고리즘 / 데이터 구조에 대한 소개이지만 내가 들어 본 것의 프로그래밍 무기고에 추가하기 위해 CLRS에 있지는 않습니다 (또는 문제로만 나타남). A * 검색, Best First Search, Bloom 필터, 파일 / 이미지 압축, Burstsort, Hidden Markov Model, Naive Bayes 분류기, 양자 알고리즘, 건너 뛰기 목록, TimSort, Treaps, Tries, Voronoi 다이어그램 알고리즘 등 벤틀리의 프로그래밍 진주와 같은 다양한 주제에 대한 흥미로운 기사 모음입니다.
dr jimbob 16:10에

16

다른 사람들이 지적했듯이 (고급) 알고리즘에 관한 책은 주제별로 가장 잘 선택됩니다. 엄격한 분석을 통한 우수하지만 무거운 일반적인 참조는 아마도 Knuth 의 컴퓨터 프로그래밍 기술입니다 .

분석 기법에 관해서는 Sedgewick과 Flajolet 의 알고리즘 분석대한 소개 와 같은 방향으로 더 많은 이론을 위해 Flajolet과 Sedgewick의 알고리즘 조합 에 관심이있을 수 있습니다 .

어려운 문제를 해결하는 방법에 대해서는 Hromkovič의 어려운 문제에 대한 알고리즘을 참조하십시오 .


5

이론적 컴퓨터 과학 핸드북을 보셨습니까?

명령형 알고리즘을 넘어 기능 프로그래밍으로 이동하려면 순전히 기능적인 데이터 구조를 살펴보십시오 . 제목에 데이터 구조가 있지만 책의 알고리즘이 다른 프로그래밍 방식에 눈을 뜨게 할 수도 있습니다.

편집하다

CS 787 의 코스 설명현재 수업을 살펴 보았습니다.

그것은 노트

우리는 주로 문학 논문을 사용합니다. 이들은 유인물 또는 웹을 통해 제공 될 것입니다. 알고리즘에 관한 몇 권의 책이 Wendt 라이브러리에 예약 될 것입니다.

그것이 내가 강사 디렉토리에 연락 할 것 입니다. :)


핸드북을 보지 못했습니다. 제안 해 주셔서 감사합니다!
유진

와우. 코스 정보를 찾을 수 없었습니다. 링크 주셔서 감사합니다.
유진

-2

컴퓨터 알고리즘은 매우 복잡하고 이해하기 어려운 주제이므로 최고의 책은 없습니다. 즉, 모든 책을 설명 할 수있는 책이 하나뿐입니다. 이 주제를 파악하려면 몇 가지를 읽어야합니다.

10 년간의 프로그래밍과 수많은 인터뷰에 기반한 2 센트는 다음과 같습니다.

  1. Steven S. Skiena의 알고리즘 설계 매뉴얼
  2. Sedgwick의 알고리즘 ( http://algs4.cs.princeton.edu/home/ )
  3. Thomas Cormen의 알고리즘 소개
  4. Adnan Aziz의 인터뷰 알고리즘
  5. 파이썬 알고리즘 : 파이썬 언어에서 기본 알고리즘 마스터하기
  6. Thomas Cormen의 잠금 해제 알고리즘

참고:


4
그리고 이것을 추천합니까?
라파엘

3
특히, 그 책을 넘어서는 책을 요구하는 질문에 대한 답변으로 Cormen et al.의 "Introduction to Algorithms"를 추천하는 이유는 무엇입니까?
David Richerby
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.