Algorithms and Complexity Analysis

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/22

flashcard set

Earn XP

Description and Tags

Flashcards covering key concepts of algorithms and complexity analysis.

Last updated 8:29 AM on 3/5/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

23 Terms

1
New cards

An algorithm can be defined as a finite set of __ that can be followed to solve a particular problem.

step-by-step procedures/instructions

2
New cards

An algorithm must always terminate after a finite number of __.

steps

3
New cards

Each step of an algorithm must be __ defined; the actions to be carried out must be rigorously specified.

precisely

4
New cards

An algorithm can have zero or more __ which are quantities given to it initially.

inputs

5
New cards

An algorithm must produce one or more __ that have a specified relation to the inputs.

outputs

6
New cards

Effectiveness means that all operations to be performed in the algorithm must be __ and can be done in a finite length of time.

basic

7
New cards

An algorithm must be __ so that each instruction can be carried out.

feasible/practical/doable

8
New cards

An algorithm must be __ independent, meaning it can be implemented using any programming language without changing the output.

language

9
New cards

Algorithms are used to solve problems in areas ranging from simple sorting to and .

artificial intelligence; machine learning

10
New cards

There are two major types of algorithms based on their implementation method: and .

iterative; recursive

11
New cards

In iterative algorithms, functions run repeatedly until a __ is met or it fails.

condition

12
New cards

Recursive algorithms work by repeatedly __ themselves with a smaller input until a base condition is reached.

calling

13
New cards

The method __ breaks down a problem into smaller, independent subproblems, recursively solves them, and combines their solutions.

Divide and Conquer

14
New cards

Dynamic programming is used when subproblems __, storing results to avoid redundant computations.

overlap

15
New cards

Greedy algorithms make locally optimal choices at each step with the hope of finding a __ optimal solution.

globally

16
New cards

Algorithm analysis is the theoretical study of a computer program's and usage.

performance; resource

17
New cards

The analysis of an algorithm helps to determine the best algorithm concerning performance and __ usage.

resource

18
New cards

Practical analysis of algorithms can be done either or .

priori; posteriori

19
New cards

Time complexity deals with the amount of __ needed by an algorithm to run to completion.

time

20
New cards

Space complexity is defined as the amount of __ required by an algorithm to run to completion.

memory

21
New cards

The __ case time complexity refers to the maximum amount of time taken by an algorithm to complete its execution.

worst-case

22
New cards

The __ case complexity provides the average amount of time needed for an algorithm to execute.

average-case

23
New cards

Linear search has a time complexity of O(n), while binary search has a time complexity of __.

O(log n)