Data structures and algorithms with Python. With an introduction to multiprocessing (Q6535455)

From MaRDI portal





scientific article; zbMATH DE number 7786058
Language Label Description Also known as
default for all languages
No label defined
    English
    Data structures and algorithms with Python. With an introduction to multiprocessing
    scientific article; zbMATH DE number 7786058

      Statements

      Data structures and algorithms with Python. With an introduction to multiprocessing (English)
      0 references
      0 references
      0 references
      10 January 2024
      0 references
      The textbook under review is a second edition consisting of two teaching modules, the first one being an introduction to data structures and the second one is on advanced data structures and algorithms; it is also a natural follow-up to the first author's [Python. Programming fundamentals. London: Springer (2011; Zbl 1213.68164)]. The book is divided into 14 chapters. Following an overview of Python as a programming environment (Chapter 1), the authors discuss the theoretical concept of computational complexity, focusing on big-O notations and proofs (Chapter 2). The next three chapters intertwine theoretical concepts and algorithms dealing with recursion (Chapter 3), sequences (Chapter 4), including canonical sorting algorithms, and sets and maps (Chapter 5). Chapters 6--11 handle graph-centric concepts, including classical concepts on trees (Chapter 6) and on generic graphs (Chapter 7), including Kruskal's and Dijkstra's algorithms. Next, Bloom filters and tries are presented in Chapter 8, and heaps are overviewed in Chapter 9. The graph section concludes with concepts on balanced binary search trees (Chapter 10) and B-trees (Chapter 11), with an emphasis on standard operations such as implementation, insertion and deletion. The last three chapters of the textbook focus on heuristic searches (Chapter 12, with a focus on DFS and BFS, contrasted with Hill Climbing, A* and minimax), parallel applications (Chapter 13), and distributed multiprocessing (Chapter 14, with a focus on serialisation, pooling and synchronisation). The authors also include extensive appendices overviewing standard operations and operators, e.g., with integers, floats, strings, etc. The textbook is structured in a systematic and pedagogical way, appealing to undergraduate and postgraduate students; it also boasts numerous examples and support information, ensuring a thorough overview of all concepts.
      0 references
      Python programming
      0 references
      computational complexity
      0 references
      big-O notation
      0 references
      asymptotic notation
      0 references
      amortised complexity
      0 references
      recursion
      0 references
      sequences
      0 references
      sorting
      0 references
      two-dimensional sequences
      0 references
      minimax
      0 references
      stack
      0 references
      queue
      0 references
      sets
      0 references
      maps
      0 references
      hashing
      0 references
      memoisation
      0 references
      trees
      0 references
      binary trees
      0 references
      search trees
      0 references
      graphs
      0 references
      Kruskal's algorithm
      0 references
      Dijkstra's algorithm
      0 references
      Bloom filters
      0 references
      trie datatypes
      0 references
      heaps
      0 references
      balanced binary trees
      0 references
      splay trees
      0 references
      B-trees
      0 references
      heuristic search
      0 references
      depth-first search
      0 references
      breadth-first search
      0 references
      hill climbing
      0 references
      A*
      0 references
      parallelisation
      0 references
      distributed multiprocessing
      0 references
      serialisation
      0 references
      pooling
      0 references
      synchronisation
      0 references

      Identifiers

      0 references
      0 references
      0 references
      0 references
      0 references
      0 references
      0 references
      0 references
      0 references