Chapter 1 An Introduction to Computer Science 1.1 Introduction Special Interest Box: In the Beginning... 1.2 The Definition of Computer Science Speciol Interest Box: Abu Ja' far Muhammad ibn Musa A[-Khowarizmi (a.d. 780-850?) 1.3 Algorithms 1.3.1 The Formal Definition of an Algorithm 1.3.2 The Importance of ALgorithmic Problem Solving PRACTICE PROBLEMS 1.4 A Brief History of Computing 1.4.1 The Early Period: Up to 1940 Special Interest Box: The Original \Technophobia\ Special Interest Box: CharLes Babbage (1791-1871) Ada Augusta Byron, Countess of Love[ace (1815-1852) 1.4.2 The Birth of Computers: 1940-1950 Special Interest Box: John Von Neumann (1903-1957) Special Interest Box= And the Verdict Is.., 1.4.3 The Modern Era: 1950 to the Present Special Interest Box: Good Evening, This Is Walter Cronkite Spedal Interest Box: The WorLd's First Microcomputer 1.5 Organization of the Text EXERCISES CHALLENGE WORK Level1 The Algorithmic Foundations of Computer Science Chapter 2 ALgorithm Discovery and Design 2.1 Introduction 2.2 Representing Algorithms 2.2.1 Pseudocode 2.2.2 Sequential Operations PRACTICE PROBLEMS 2.2.3 Conditional and Iterative Operations Special Interest Box: From LittLe Primitives Mighty ALgorithms Do Grow PRACTICE PROBLEMS 2.3 ExampLes of ALgorithmic ProbLem Solving 2.3.1 ExampLe 1: Go Forth and Multiply PRACTICE PROBLEMS 2.3.2 ExampLe 2: Looking, Looking, Looking 2.3.3 ExampLe 3: Big, Bigger, Biggest PRACTICE PROBLEMS 2.3.4 Example 4: Meeting Your Match PRACTICE PROBLEMS 2.4 ConcLusion EXERCISES CHALLENGE WORK Chapter 3 The Efficiency of ALgorithms 3.1 Introduction 3.2 Attributes of ALgorithms PRACTICE PROBLEMS 3.3 Measuring Efficiency 3.3.1 Sequential Search 3.3.2 Order of Magnitude--Order n Special Interest Box: FLipping Pancakes PRACTICE PROBLEM 3.3.3 SeLection Sort PRACTICE PROBLEM 3.3.4 Order of Magnitude--Order n2 Special Interest Box: The Tortoise and the Hare PRACTICE PROBLEM 3.4 AnaLysis of ALgorithms 3.4.1 Data CLeanup ALgorithms PRACTICE PROBLEMS 3.4.2 Binary Search PRACTICE PROBLEMS 3.4.3 Pattern Hatching 3.4.4 Summary PRACTICE PROBLEM 3.5 When Things Get Out of Hand PRACTICE PROBLEMS 3.6 Summary of Level 1 …… Level2 The Hardware World Level3 The Virtual Machine Level4 The Software World Level5 Applications Level6 Social Issues in Computing