Free Online Flashcard Deck

1 Computational Thinking and Problem Solving Free Online FlashCards

Study 1 Computational Thinking and Problem Solving with 12 free online flashcards. Review key terms, definitions, and concepts with this interactive flashcard deck.

12 cards
01
Front

What does computer science study?

Back

Computer science studies how information is represented, processed, stored, communicated, and used to solve problems, including algorithms, programs, systems, and artificial intelligence.

02
Front

What are the three parts of a computational solution?

Back

A computational solution includes a clearly stated problem, a useful representation of the input and desired output, and a precise process that transforms the input into the output.

03
Front

What is abstraction?

Back

Abstraction removes or hides unnecessary details while preserving the information needed for a particular task.

04
Front

What is decomposition?

Back

Decomposition divides a complex problem into smaller, more manageable subproblems that can be understood, developed, and tested separately.

05
Front

Why is modular design useful?

Back

A modular design makes components easier to understand, test, reuse, and assign to different people; changes in one component are less likely to damage unrelated parts.

06
Front

How does pattern recognition support problem solving?

Back

Pattern recognition identifies similarities, repetitions, trends, or relationships so that an existing method can be adapted instead of designing a new solution from scratch.

07
Front

What is an algorithm?

Back

An algorithm is a finite, ordered set of unambiguous steps that receives input, performs defined operations, and produces output.

08
Front

What properties should a useful algorithm have?

Back

A useful algorithm should be correct, clear, finite, general enough for relevant inputs, and reasonably efficient in time and memory.

09
Front

What invariant does the largest-value algorithm maintain?

Back

An invariant is a condition that remains true during an algorithm. In the largest-value algorithm, `largest` is the greatest value examined so far.

10
Front

When is binary search especially useful?

Back

Binary search is advantageous when a list is sorted because it can repeatedly discard half of the remaining items, unlike a one-by-one search through an unsorted list.

11
Front

Why does representation matter in problem solving?

Back

A suitable representation exposes the relationships needed by an algorithm; examples include a graph for a map, records for students, and a grid of pixel values for an image.

12
Front

Which kinds of cases should an algorithm be tested with?

Back

Testing should include normal cases, boundary cases, and invalid cases to reveal incorrect assumptions, failures at limits, and improper input handling.