文件名称:Data Structures & Algorithms in Swift 4th Edition
文件大小:17.74MB
文件格式:PDF
更新时间:2021-10-10 07:15:36
data algorithms swift structure
Learn data structures and algorithms in Swift! Understanding how data structures and algorithms work in code is crucial for creating efficient and scalable apps. Swift’s Standard Library has a small set of general purpose collection types, yet they definitely don’t cover every case! In this book, you’ll learn how to implement the most popular and useful data structures, and when and why you should use one particular data structure or algorithm over another. This set of basic data structures and algorithms will serve as an excellent foundation for building more complex and special-purpose constructs. As well, the high-level expressiveness of Swift makes it an ideal choice for learning these core concepts without sacrificing performance. Who This Book Is For This book is for developers who are comfortable with Swift and want to ace whiteboard interviews, improve the performance of their code, and ensure their apps will perform well at scale. Topics Covered in Data Structures & Algorithms in Swift * Basic structures: Start with the fundamental structures of linked lists, queues and stacks, and see how to implement them in a highly Swift-like way. * Trees: Learn how to work with various types of trees, including general purpose trees, binary trees, AVL trees, binary search trees, and tries. * Sorting: Go beyond bubble and insertion sort with better-performing algorithms, including mergesort, radix sort, heap sort, and quicksort. * Graphs: Learn how to construct directed, non-directed and weighted graphs to represent many real-world models. * Traversals: Traverse graphs and trees efficiently with breadth-first, depth-first, Dijkstra’s and Prim’s algorithms to solve problems such as finding the shortest path or lowest cost in a network. * And much, much more! By the end of this book, you’ll have hands-on experience solving common issues with data structures and algorithms — and you’ll be well on your way to developing your own efficient and useful implementations!