Chapter 1: Problem solving Flashcards
What is computational thinking?
Thought processes involved in creating solutions to problems, which can be easily and effectively carried out by computers
What is decomposition?
Breaking a problem down into smaller, more manageable parts (sub-problems) which are easier to solve
What is abstraction?
The process of removing or hiding unnecessary detail so that only the important points remain
What are the advantages of using subprograms, APIs and libraries in programs?
A programmer can use someone else’s subprogram even if they don’t know how it works
Reduce the complexity of programs and make them easier to understand
Different subprograms can be written by different programmers
(libraries) less testing required
(libraries) Code is quicker to write
Code only has to be written once
When is linear search more appropriate?
Searching an unsorted list just once
When is binary search more appropriate?
Searching a sorted list once or sorting and then searching a large initially-unsorted list multiple times``