Data Structures & Algorithms in Swift: Implementing practical data structures with Swift 4
- Length: 280 pages
- Edition: 1
- Language: English
- Publisher: Razeware LLC
- Publication Date: 2018-03-13
- ISBN-10: 1942878486
- ISBN-13: 9781942878483
- Sales Rank: #2593699 (See Top 100 Books)
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!
Table of Contents
Chapter 1: Preface
Chapter 2: Swift Standard Library
Chapter 3: Linked List
Chapter 4: Stack Data Structure
Chapter 5: Queues
Chapter 6: Trees
Chapter 7: Binary Trees
Chapter 8: Binary Search Trees
Chapter 9: AVL Trees
Chapter 10: Tries
Chapter 11: Binary Search
Chapter 12: The Heap Data Structure
Chapter 13: Priority Queue
Chapter 14: O(n²) Sorting Algorithms
Chapter 15: Merge Sort
Chapter 16: Radix Sort
Chapter 17: Heap Sort
Chapter 18: Quicksort
Chapter 19: Graphs
Chapter 20: Breadth First Search
Chapter 21: Depth-First Search
Chapter 22: Dijkstra’s Algorithm
Chapter 23: Prim’s Algorithm