Computational Thinking Flashcards
What is computational thinking?
The process and methods used to solve problems with algorithms.
What is abstraction?
The process of removing unnecessary details such that the problem becomes simpler, representational abstraction uses symbols to show a point of interest.
Why is abstraction useful?
It often makes it simpler to see what needs solving, also high level abstractions can often be applied to solve other problems (see basically all of maths).
What is decomposition?
Breaking down a problem into sub-problems that are easier to solve.
Advantages of decomposition?
Makes the writing easier, makes code easier to test and maintain.
What is concurrent processing?
When each task is given part of the processor time such that it appears there are several simultaneous tasks occurring.
Advantages and disadvantages of concurrent processing?
Increased program throughput, time that would be spent waiting for user inputs can be spent on other tasks however each program will take longer especially if there is a lot of programs.
Why are re-usable program components useful?
Time is saved writing and testing the code.
What is the advantages and disadvantages of caching?
Reduces time that would be spent fetching data but requires some time processing which data to fetch and can be complex.
What is enumeration?
When each possible case is attempted in the hope of finding a solution, e.g. trying all possible chess moves to find the best available move.
What is simulation (in problem solving)?
Designing a virtual system that models something else, for example simulating a spacecraft launch, cheaper than producing a ship, could also be used to simulate unlikely but harmful events like fires.
What is the divide and conquer approach to problem solving?
When a problem is cut down into smaller sections allowing you to discard potential solutions or solve them easier e.g. binary search.
What is data mining?
It is the process of looking through large data sets to find useful trends.
What are heuristic methods?
Where a good but often not perfect solution to a problem is found, useful for problems like the travelling salesman.