The Self-Taught Computer Scientist. Cory Althoff. Читать онлайн. Newlib. NEWLIB.NET

Автор: Cory Althoff
Издательство: John Wiley & Sons Limited
Серия:
Жанр произведения: Зарубежная компьютерная литература
Год издания: 0
isbn: 9781119724339
Скачать книгу
Challenges 11 Stacks When to Use Stacks Creating a Stack Using Stacks to Reverse Strings Min Stack Stacked Parentheses Vocabulary Challenges 12 Queues When to Use Queues Creating a Queue Python's Built-In Queue Class Create a Queue Using Two Stacks Vocabulary Challenge 13 Hash Tables When to Use Hash Tables Characters in a String Two Sum Vocabulary Challenge 14 Binary Trees When to Use Trees Creating a Binary Tree Breadth-First Tree Traversal More Tree Traversals Invert a Binary Tree Vocabulary Challenges 15 Binary Heaps When to Use Heaps Creating a Heap Connecting Ropes with Minimal Cost Vocabulary Challenge 16 Graphs When to Use Graphs Creating a Graph Dijkstra's Algorithm Vocabulary Challenge 17 Self-Taught Inspiration: Elon Musk 18 Next Steps What’s Next? Climbing the Freelance Ladder How to Get an Interview How to Prepare for a Technical Interview Additional Resources Final Thoughts

      6  Index

      7  Copyright

      8  Dedication

      9  About the Author

      10  About the Technical Editor

      11  Acknowledgments

      12  End User License Agreement

      List of Illustrations

      1 Chapter 1Figure 1.1 Constant complexityFigure 1.2 Logarithmic complexityFigure 1.3 Linear complexityFigure 1.4 Log-linear complexityFigure 1.5 Quadratic complexityFigure 1.6 Big O complexity chart

      2 Chapter 3Figure 3.1 Sorted data set for a binary searchFigure 3.2 A binary search first locates the middle number.Figure 3.3 The next step in a binary search eliminates the half of the data ...Figure 3.4 A binary search then finds the middle number again.Figure 3.5 Our binary search found our number.Figure 3.6 Exponential notation versus logarithmic notationFigure 3.7 ASCII chart

      3 Chapter 4Figure 4.1 The first part of a merge sort

      4 Chapter 5Figure 5.1 You use modulo arithmetic when you tell time.Figure 5.2 Eight hours after 9 is 5.

      5 Chapter 6Figure 6.1 The place values for the number 1,452 in base 10Figure 6.2 The powers of 10 used in the place values in base 10Figure 6.3 The powers of 2 used in the place values in base 2

      6 Chapter 9Figure 9.1 An example of data in an arrayFigure 9.2 Array operation run timesFigure 9.3 An array stored in a computer's memoryFigure 9.4 Adding data to an array often means changing many memory location...

      7 Chapter 10Figure 10.1 A linked list is a chain of nodes.Figure 10.2 A linked list does not need to store nodes in consecutive memory...Figure 10.3 Pointers map the nodes of a linked list.Figure 10.4 Inserting an element into a linked list requires adjusting two p...Figure 10.5 A doubly linked list has pointers that go in two directions.Figure 10.6 A circular linked list points from the end back to the head.Figure 10.7 Linked list operation run timesFigure 10.8 To remove a node, change the previous node's pointer.Figure 10.9 Reversing a linked list

      8 Chapter 11Figure 11.1 Data can be pushed on a stack or popped from it.Figure 11.2 Stack operation run timesFigure 11.3 If you pop off the characters of super , you get repus .

      9 Chapter