Introduction to Algorithms 공부모임

rgbi3307의 이미지

모든 분야에는 기본이 튼튼해야 합니다.
아래의 기술서적은 전기전자공학, 컴퓨터공학, 전산학 분야의 기본이 되는것이고,
학습, 연구, 응용해야할 충분한 가치가 있다고 봅니다.
같이 공부할 분들을 모집합니다.
공부모임에 참가하실 분들은 커널연구회(www.kernel.kr) 게시판에서 참가신청하세요~
지금 바로요~

Introduction to Algorithms, Second Edition

Thomas H. Cormen
Charles E. Leiserson
Ronald L. Rivest
Clifford Stein
The MIT Press
Cambridge , Massachusetts London, England
McGraw-Hill Book Company
Boston Burr Ridge , IL Dubuque , IA Madison , WI New York San Francisco St. Louis
Montréal Toronto

This book is one of a series of texts written by faculty of the Electrical Engineering and
Computer Science Department at the Massachusetts Institute of Technology. It was edited and
produced by The MIT Press under a joint production-distribution agreement with the
McGraw-Hill Book Company.

Copyright © 2001 by The Massachusetts Institute of Technology
First edition 1990

page: 009
Part I: Foundations
Chapter 1: The Role of Algorithms in Computing
Chapter 2: Getting Started
Chapter 3: Growth of Functions
Chapter 4: Recurrences
Chapter 5: Probabilistic Analysis and Randomized Algorithms

page: 109
Part II: Sorting and Order Statistics
Chapter 6: Heapsort
Chapter 7: Quicksort
Chapter 8: Sorting in Linear Time
Chapter 9: Medians and Order Statistics

page: 172
Part III: Data Structures
Chapter 10: Elementary Data Structures
10.1 Stacks and queues
10.2 Linked lists
10.3 Implementing pointers and objects
10.4 Representing rooted trees
Chapter 11: Hash Tables (page:192)
11.1 Direct-address tables
11.2 Hash tables
11.3 Hash functions
11.4 Open addressing
11.5 Perfect hashing
Chapter 12: Binary Search Trees(page:220)
12.1 What is a binary search tree?
12.2 Querying a binary search tree
12.3 Insertion and deletion
12.4 Randomly built binary search trees
Chapter 13: Red-Black Trees(page:238)
13.1 Properties of red-black trees
13.2 Rotations
13.3 Insertion
13.4 Deletion
Chapter 14: Augmenting Data Structures(page:261)
14.1 Dynamic order statistics
14.2 How to Augment a Data Structure
14.3 Interval Trees

page: 276
Part IV: Advanced Design and Analysis Techniques
Chapter 15: Dynamic Programming
Chapter 16: Greedy Algorithms
Chapter 17: Amortized Analysis

page: 369
Part V: Advanced Data Structures
Chapter 18: B-Trees
Chapter 19: Binomial Heaps
Chapter 20: Fibonacci Heaps
Chapter 21: Data Structures for Disjoint Sets

page: 444
Part VI: Graph Algorithms
Chapter 22: Elementary Graph Algorithms
Chapter 23: Minimum Spanning Trees
Chapter 24: Single-Source Shortest Paths
Chapter 25: All-Pairs Shortest Paths
Chapter 26: Maximum Flow

page: 598
Part VII: Selected Topics
Chapter 27: Sorting Networks
Chapter 28: Matrix Operations
Chapter 29: Linear Programming
Chapter 30: Polynomials and the FFT
Chapter 31: Number-Theoretic Algorithms
Chapter 32: String Matching
Chapter 33: Computational Geometry
Chapter 34: NP-Completeness
Chapter 35: Approximation Algorithms

page: 919
Part VIII: Appendix: Mathematical Background
Appendix A: Summations
Appendix B: Sets, Etc.
Appendix C: Counting and Probability

rgbi3307의 이미지

공부모임 주기는 2주일에 한번,
장소는 대학로(지하철4호선 혜화역),
시간은 평일 금요일 저녁8시~10시, 혹은, 토요일 오후2시~4시.

공부분량을 정해서 상호 토론하는 방식입니다.
모임 비용은 일인당 5천원(장소사용비,음료수)입니다.

커널연구회(www.kernel.kr) 게시판에 들러서, 의견 소통해 주셨으면 합니다.
즐컴 하시길...

From:
*알지비 (메신저: rgbi3307(at)nate.com)
*학창시절 마이크로마우스를 만들었고, 10년동안 IT관련 개발자로 일하고 있음.
*틈틈히 커널연구회(http://www.kernel.kr/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))

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

rgbi3307의 이미지

책은 ebook(PDF파일)으로 다운로드할 수 있어요.
다만, Second Edition이구요. (최신은 Third Edition)

구글에서 Introduction to Algorithms PDF 로 검색해 보시면, 다운로드 사이트가 많이 나옵니다.

참고로, Third Edition은 아래 사이트에서 목차를 볼 수 있습니다.
http://mitpress.mit.edu/algorithms/

From:
*알지비 (메신저: rgbi3307(at)nate.com)
*학창시절 마이크로마우스를 만들었고, 10년동안 IT관련 개발자로 일하고 있음.
*틈틈히 커널연구회(http://www.kernel.kr/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))

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

rgbi3307의 이미지

컴퓨터A의 처리속도: 초당1000개의 명령어처리(1000 instructions/seconds)
컴퓨터B의 처리속도: 초당10개의 명령어처리(10 instructions/seconds)
(컴퓨터A가 B보다 100배 빠릅니다)

백만개(10의6승)의 자료(n)를 정렬하는 알고리즘에서,
알고리즘1(insertion sort)의 처리명령수: n의2승 instructions
알고리즘2(merge sort)의 처리명령수: n x log(n) instructions

이때,
컴퓨터A에 알고리즘1을 실행할때의 시간 A1,
컴퓨터B에 알고리즘2을 실행할때의 시간 B2를 계산해보면,

A1 = 알고리즘1 / 초당컴퓨터A처리명령수
= n의2승 / 1000
= ((10의6승)의2승) / 1000
= (10의12승) / (10의3승)
= 10의9승
= 10억초

B2 = 알고리즘2 / 초당컴퓨터B처리명령수
= (n x log(n)) / 10
= ((10의6승) x log(10의6승)) / 10
= ((10의6승) x 6) / 10
= 6000000 / 10
= 60만초

사업장에서 1초당 1원의 비용이 든다면,
A1은 10억원, B2는 60만원의 비용이 발생하는 셈입니다.
따라서,
알고리즘이 하드웨어 보다 더 중요한 기술일 수 있습니다.

From:
*알지비 (메신저: rgbi3307(at)nate.com)
*학창시절 마이크로마우스를 만들었고, 10년동안 IT관련 개발자로 일하고 있음.
*틈틈히 커널연구회(http://www.kernel.kr/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))

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

regaini의 이미지

하드웨어가 더 중요한 기술이 될 텐데요.

rgbi3307의 이미지


Introduction to Algorithms 공부모임을 아래와 같이 진행합니다.

주기: 격주(2주마다)
일시: 금요일 저녁8시~10시
장소: 대학로(지하철4호선 혜화역 4번출구) 토즈
비용: 각자 5천원(장소사용비,음료,커피,티,미숫가루 무한 리필)

공부진도는 토론섹션을 상호 협의하여 진행하도록 하겠습니다.

일단, 첫 공부모임은 9월11일(금) 저녁8시~10시 입니다.

찾아오는 약도는 커널연구회(www.kernel.kr) 게시판 확인하시고,
좀더 자세한 사항은 http://www.kernel.kr/sr/sr03.htm 보시길...

From:
*알지비 (메신저: rgbi3307(at)nate.com)
*학창시절 마이크로마우스를 만들었고, 10년동안 IT관련 개발자로 일하고 있음.
*틈틈히 커널연구회(http://www.kernel.kr/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))

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

cleansugar의 이미지

I2A 3판 한국어 혹시 언제 나오는지 아시는 분 계세요?

___________________

http://blog.aaidee.com

재벌 2세가 재벌이 될 확률과
금메달리스트 2세가 금메달을 딸 확률이 비슷해지도록
자유오픈소스 대안화폐를 씁시다.

아이디의 아이디어 무한도전
http://blog.aaidee.com

귀태닷컴
http://www.gwitae.com