1. Trang chủ
  2. » Công Nghệ Thông Tin

Thuật toán và cấu trúc dữ liệu

305 290 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 305
Dung lượng 2,03 MB

Nội dung

Algorithms are at the heart of every nontrivial computer application. Therefore every computer scientist and every professional programmer should know about the basic algorithmic toolbox: structures that allow efficient organization and retrieval of data, frequently used algorithms, and generic techniques for modeling, understanding, and solving algorithmic problems. Most chapters have the same basic structure. We begin by discussing a problem as it occurs in a reallife situation. We illustrate the most important applications and then introduce simple solutions as informally as possible and as formally as necessaryto really understand the issues at hand. When we move to more advanced and optional issues, this approach gradually leads to a more mathematical treatment, including theorems and proofs. This way, the book should work for readers with a wide range of mathematical expertise. There are also advanced sections (marked with a ) where werecommendthat readers should skip them on first reading. Exercises provide additional examples, alternative approaches and opportunities to think about the problems. It is highly recommended to take a look at the exercises even if there is no time to solve them during the first reading. In order to be able to concentrate on ideas rather than programming details, we use pictures, words, and highlevel pseudocode to explain our algorithms. A section “implementation notes” links these abstract ideas to clean, efficient implementations in real programming languages such as C++and Java. Each chapter ends with a section on further findings that provides a glimpse at the state of the art, generalizations, and advanced solutions.

Ngày đăng: 23/11/2014, 04:29

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[16] R. Bayer and E. M. McCreight. Organization and maintenance of large or- dered indexes. Acta Informatica, 1(3):173–189, 1972 Sách, tạp chí
Tiêu đề: Acta Informatica
[17] R. Beier and B. Vửcking. Random knapsack in expected polynomial time.Journal of Computer and System Sciences, 69(3):306–329, 2004 Sách, tạp chí
Tiêu đề: Journal of Computer and System Sciences
[18] R. Bellman. On a routing problem. Quarterly of Applied Mathematics, 16(1):87–90, 1958 Sách, tạp chí
Tiêu đề: Quarterly of Applied Mathematics
[19] M. A. Bender, E. D. Demaine, and M. Farach-Colton. Cache-oblivious B- trees. In 41st Annual Symposium on Foundations of Computer Science, pages 399–409, 2000 Sách, tạp chí
Tiêu đề: 41st Annual Symposium on Foundations of Computer Science
[20] J. L. Bentley and M. D. McIlroy. Engineering a sort function. Software Prac- tice and Experience, 23(11):1249–1265, 1993 Sách, tạp chí
Tiêu đề: Software Prac-tice and Experience
[21] J. L. Bentley and T. A. Ottmann. Algorithms for reporting and counting geo- metric intersections. IEEE Transactions on Computers, pages 643–647, 1979 Sách, tạp chí
Tiêu đề: IEEE Transactions on Computers
[22] J. L. Bentley and R. Sedgewick. Fast algorithms for sorting and searching strings. In 8th Annual ACM-SIAM Symposium on Discrete Algorithms, pages 360–369, 1997 Sách, tạp chí
Tiêu đề: 8th Annual ACM-SIAM Symposium on Discrete Algorithms
[23] D. Bertsimas and J. N. Tsitsiklis. Introduction to Linear Optimization. Athena Scientific, 1997 Sách, tạp chí
Tiêu đề: Introduction to Linear Optimization
[24] G. E. Blelloch, C. E. Leiserson, B. M. Maggs, C. G. Plaxton, S. J. Smith, and M. Zagha. A comparison of sorting algorithms for the connection ma- chine CM-2. In 3rd ACM Symposium on Parallel Algorithms and Architec- tures, pages 3–16, 1991 Sách, tạp chí
Tiêu đề: A comparison of sorting algorithms for the connection machine CM-2
Tác giả: G. E. Blelloch, C. E. Leiserson, B. M. Maggs, C. G. Plaxton, S. J. Smith, M. Zagha
Nhà XB: 3rd ACM Symposium on Parallel Algorithms and Architectures
Năm: 1991
[25] M. Blum, R. W. Floyd, V. R. Pratt, R. L. Rivest, and R. E. Tarjan. Time bounds for selection. Journal of Computer and System Sciences, 7(4):448, 1972 Sách, tạp chí
Tiêu đề: Journal of Computer and System Sciences
[26] N. Blum and K. Mehlhorn. On the average number of rebalancing operations in weight-balanced trees. Theoretical Computer Science, 11:303–320, 1980 Sách, tạp chí
Tiêu đề: Theoretical Computer Science
[28] O. Boruvka. O jistém problému minimálním. Pràce, Moravské Prirodovedecké Spolecnosti, pages 1–58, 1926 Sách, tạp chí
Tiêu đề: O jistém problému minimálním
Tác giả: O. Boruvka
Nhà XB: Pràce
Năm: 1926
[29] F. C. Botelho, R. Pagh, and N. Ziviani. Simple and space-efficient minimal perfect hash functions. In 10th Workshop on Algorithms and Data Structures, volume 4619 of Lecture Notes in Computer Science, pages 139–150. Springer, 2007 Sách, tạp chí
Tiêu đề: Simple and space-efficient minimal perfect hash functions
Tác giả: F. C. Botelho, R. Pagh, N. Ziviani
Nhà XB: Springer
Năm: 2007
[30] G. S. Brodal. Worst-case efficient priority queues. In 7th Annual ACM-SIAM Symposium on Discrete Algorithms, pages 52–58, 1996 Sách, tạp chí
Tiêu đề: Worst-case efficient priority queues
Tác giả: G. S. Brodal
Nhà XB: 7th Annual ACM-SIAM Symposium on Discrete Algorithms
Năm: 1996
[31] G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In 6th Scandinavian Workshop on Algorithm Theory, volume 1432 of Lecture Notes in Computer Science, pages 107–118. Springer, 1998 Sách, tạp chí
Tiêu đề: Worst-case efficient external-memory priority queues
Tác giả: G. S. Brodal, J. Katajainen
Nhà XB: Springer
Năm: 1998
[32] M. R. Brown and R. E. Tarjan. Design and analysis of a data structure for representing sorted lists. SIAM Journal of Computing, 9:594–614, 1980 Sách, tạp chí
Tiêu đề: Design and analysis of a data structure for representing sorted lists
Tác giả: M. R. Brown, R. E. Tarjan
Nhà XB: SIAM Journal of Computing
Năm: 1980
[33] R. Brown. Calendar queues: A fast O(1) priority queue implementation for the simulation event set problem. Communications of the ACM, 31(10):1220–1227, 1988 Sách, tạp chí
Tiêu đề: O"(1)priority queue implementation forthe simulation event set problem. "Communications of the ACM
[74] GMP (GNU Multiple Precision Arithmetic Library). http://gmplib.org/ Link
[78] M. T. Goodrich and R. Tamassia. JDSL – the data structures library in Java.http://www.jdsl.org/ Link
[125] MCSTL: The Multi-Core Standard Template Library. http://algo2.iti.uni-karlsruhe.de/singler/mcstl/ Link

TỪ KHÓA LIÊN QUAN

w