알고리즘 소개 (CLRS) 서적에 대한 필수 수학 기술 [닫기]


30

기본 알고리즘에 대해 이미 알고 있습니다. 이제 더 많은 고급 알고리즘을 연구 할 계획이며 알고리즘 소개로 이동하기로 결정했습니다 .

잘 모르겠습니다.이 책을 읽기 전에 수학 기술을 새로 고쳐야합니까? (고등학교 및 대학에서 배운 수학은 거의 잊어 버립니다.)이 책에 강력한 수학 지식이 필요한 경우 도움이되는 과목을 제안하십시오.

알고리즘의 구현, 설계 및 분석에 대해 배우고 싶습니다.


1
필요한 경우 기술을 새로 고칠 수있는 훌륭한 자료가 있습니다. khanacademy.org
— Alan B. Dee

답변:



9

@ user16764가 특정 MIT 과정 제공 (6.042) 과 관련하여 암시 하듯 이, 일반적으로 이산 수학 이라 불리는 버전은 1 년 (대학) 수준의 미적분학과 결합되어 많은 (기본) 알고리즘과 알고리즘을 이해하기위한 기본 요구 사항입니다. 분석.

특수 또는 고급 알고리즘에는 통계 / 확률 (과학 및 재무 프로그래밍), 추상 대수 및 숫자 이론 (예 : 암호화)과 같은 추가 또는 고급 수학적 배경이 필요할 수 있습니다.

학생으로서 저의 개별 수학 과정에는 Susanna Epp의 Discrete Mathematics with Applications와 함께 교과서가 있었고, 도서관에서 찾은 또 다른 교과서는 Kenneth Ross와 Charles Wright의 이산 수학 이었습니다 . 이들 중 하나의 양질의 중고 사본은 시작하기에 합리적인 장소 일 것입니다 (학습 스타일에 따라 MIT Open Course Ware와 함께 또는 함께 사용하지 않음). 자율 학습을 위해 종종 이해하기 어려운 두 가지 정보를 참조하여 이해하기 어려운 점을 명확하게 찾을 수 있습니다.

내가 제안한 대안은 콘크리트 수학 , Ronald L. Graham의 제 2 판, Donald E. Knuth 및 Oren Patashnik입니다. 현재 사본을 찾을 수없고 부지런히 작업하지 않았으므로 추천하거나 반대 할 수 없습니다.

서문에서 :

그러나 구체적 수학은 무엇입니까? 연속적이고 이산적인 수학이 혼합되어 있습니다. 보다 구체적으로, 문제 해결을위한 기술 모음을 사용하여 수학 공식의 제어 조작입니다.

이 블로그 항목 인 " 도서 프로그래머가 실제로 읽지 않음 "에서 Bill the Lizard 의 curmudgeon 의견에 주목할 것 입니다. 개인적으로 나는 여전히 Robert Sedgewick의 알고리즘 (현재 4 번째 에디션)이 덜 위협적이고 접근하기 쉽다고 생각합니다.

수학 의 연속적인 (즉, 실수 ) 부분과 관련 하여 Stewart의 Calculus 는 차별화와 통합에서 오는 깨달음에 대해 학생들에게 강의하는 데 자주 사용되는 것으로 보입니다.


6

수학적 형식주의에 편안함과 유창함이 있기 때문에 실제로 수학 자체는 그리 많지 않습니다. 기본 설정 용어 및 해당 형식을 학습합니다.

알고리즘의 분석, 특히 기본 계산 문제를 연구하는 복잡성 이론의 맥락에서 ( "Big-Oh"표기법보다 더 중요한 것을 시도하는 경우) 그래프 이론에 대한 시간에 상당한 투자가 필요합니다. 그리고 선천적 인 영리함의 엄청난 복용량과 더불어 추상 대수학.


1

알고리즘의 구현뿐만 아니라 알고리즘의 "분석"에 대해 염려하지 않는 한 잘 나가는 것이 좋습니다. 우리 과정은 일반적으로 대부분의 대학 교육 과정에서 UD 수학 또는 CS 과정입니다.

그 책에서 알고리즘을 구현하는 방법을 이해하는 것은 문제가되지 않습니다


알고리즘 분석에 대해서도 배우고 싶습니다. 제안 해주세요. :)
— 익명

@Anonymous이 경우 총알을 물 수 밖에 없다고 생각합니다. 나는 이산적인 수학을 가르치기 시작했지만 곧 압도 당하고 그만 두었고 데이터 구조와 알고리즘에 대한 "인기"책을 통해 쉬운 방법을 시도했지만 실제 거래가 누락되었다는 것을 알았습니다. 나는 이제 다시 시작하기 위해 용기를 요구하고 있습니다.
— ankush981
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.