C949 Study Guide Highlighted Topics

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/112

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 6:12 PM on 6/22/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

113 Terms

1
New cards

Finiteness

An algorithm must always have a finite number of steps before it ends. It must have a defined endpoint and not enter an endless loop.

2
New cards

Definiteness

An algorithm needs exact definitions for each step. Every step should be clear and unambiguous.

3
New cards

Modularity

Breaking a problem into small modules or small steps.

4
New cards

Extensibility

An algorithm should be reusable and extendable by other programmers.

5
New cards

Base Case

The condition under which recursion stops; the simplest instance solved without further recursion.

6
New cards

Linear Search Best Case

O(1) — The target element is the first element.

7
New cards

Linear Search Average Case

O(n) — The target element is somewhere in the middle or not in the array.

8
New cards

Linear Search Worst Case

O(n) — The target element is the last element or not present.

9
New cards

Binary Search Concept

Operates on a sorted list and repeatedly divides the search interval in half.

10
New cards

Binary Search Time Complexity

O(log n)

11
New cards

Binary Search Use Case

Ideal for large sorted datasets.

12
New cards

Binary Search Requirement

Requires a sorted array.

13
New cards

Binary Search Characteristic

Divides the search interval in half repeatedly.

14
New cards

Binary Search Best Case

O(1) — The target element is the middle element.

15
New cards

Binary Search Average Case

O(log n)

16
New cards

Binary Search Worst Case

O(log n)

17
New cards

Bubble Sort Use Case

Simple but inefficient; best for education or small lists.

18
New cards

Bubble Sort Characteristic

Repeatedly swaps adjacent elements that are in the wrong order.

19
New cards

Bubble Sort Characteristic

Largest element bubbles to the end of the list.

20
New cards

Bubble Sort Best Case

O(n)

21
New cards

Bubble Sort Average Case

O(n²)

22
New cards

Bubble Sort Worst Case

O(n²)

23
New cards

Bubble Sort Clue

Swap, Exchange, Bubble

24
New cards

Selection Sort Use Case

Useful when memory writes are more expensive than comparisons.

25
New cards

Selection Sort Characteristic

Finds the minimum element and swaps it with the first unsorted element.

26
New cards

Selection Sort Characteristic

Reduces the problem size by one each iteration.

27
New cards

Selection Sort Best Case

O(n²)

28
New cards

Selection Sort Average Case

O(n²)

29
New cards

Selection Sort Worst Case

O(n²)

30
New cards

Selection Sort Clue

Select Minimum, Swap With Start

31
New cards

Insertion Sort Use Case

Good for small or nearly sorted lists.

32
New cards

Insertion Sort Characteristic

Builds a sorted list one element at a time.

33
New cards

Insertion Sort Characteristic

Shifts elements to make space for the current element.

34
New cards

Insertion Sort Best Case

O(n)

35
New cards

Insertion Sort Average Case

O(n²)

36
New cards

Insertion Sort Worst Case

O(n²)

37
New cards

Insertion Sort Clue

Insert, Shift Element

38
New cards

Merge Sort Use Case

Efficient and stable for large datasets.

39
New cards

Merge Sort Characteristic

Divides the list into halves, sorts each half, then merges them.

40
New cards

Merge Sort Characteristic

Requires additional space for merging.

41
New cards

Merge Sort Best Case

O(n log n)

42
New cards

Merge Sort Average Case

O(n log n)

43
New cards

Merge Sort Worst Case

O(n log n)

44
New cards

Merge Sort Clue

Merge, Split

45
New cards

Quicksort Use Case

Often faster in practice than merge sort but less stable.

46
New cards

Quicksort Characteristic

Uses a pivot element and partitions the array.

47
New cards

Quicksort Characteristic

Recursively sorts partitions.

48
New cards

Quicksort Best Case

O(n log n)

49
New cards

Quicksort Average Case

O(n log n)

50
New cards

Quicksort Worst Case

O(n²)

51
New cards

Quicksort Clue

Pivot, Split

52
New cards

Heap Sort Use Case

Useful when memory usage is a concern because it is in-place.

53
New cards

Heap Sort Characteristic

Uses a binary heap data structure.

54
New cards

Heap Sort Characteristic

Builds a max heap and repeatedly extracts the maximum element.

55
New cards

Heap Sort Best Case

O(n log n)

56
New cards

Heap Sort Average Case

O(n log n)

57
New cards

Heap Sort Worst Case

O(n log n)

58
New cards

Heap Sort Clue

Heapify, Extract Max, Build Heap

59
New cards

Counting Sort Use Case

Efficient for sorting integers with a small range of values.

60
New cards

Counting Sort Characteristic

Counts occurrences of each element.

61
New cards

Counting Sort Characteristic

Non-comparative sorting algorithm.

62
New cards

Counting Sort Best Case

O(n + k)

63
New cards

Counting Sort Average Case

O(n + k)

64
New cards

Counting Sort Worst Case

O(n + k)

65
New cards

Radix Sort Use Case

Effective for sorting large numbers or fixed-length strings.

66
New cards

Radix Sort Characteristic

Processes individual digits.

67
New cards

Radix Sort Characteristic

Often combined with counting sort.

68
New cards

Radix Sort Best Case

O(n × k)

69
New cards

Radix Sort Average Case

O(n × k)

70
New cards

Radix Sort Worst Case

O(n × k)

71
New cards

Radix Sort Clue

Count, Frequency, Sum

72
New cards

Bucket Sort Use Case

Good for uniformly distributed data.

73
New cards

Bucket Sort Characteristic

Distributes elements into buckets and sorts each bucket.

74
New cards

Bucket Sort Characteristic

Often combined with insertion sort.

75
New cards

Bucket Sort Best Case

O(n + k)

76
New cards

Bucket Sort Average Case

O(n + k)

77
New cards

Bucket Sort Worst Case

O(n²)

78
New cards

Bucket Sort Clue

Bucket

79
New cards

Shell Sort Characteristic

Generalization of insertion sort using a gap sequence.

80
New cards

Shell Sort Characteristic

Sorts elements far apart and gradually reduces the gap.

81
New cards

Shell Sort Time Complexity

Commonly O(n^1.5)

82
New cards

Shell Sort Best Case

O(n log n)

83
New cards

Shell Sort Average Case

O(n^1.5)

84
New cards

Shell Sort Worst Case

O(n²)

85
New cards

Shell Sort Clue

Gap, Interval

86
New cards

O(1)

Constant Time

87
New cards

O(log n)

Logarithmic Time

88
New cards

O(n)

Linear Time

89
New cards

O(n log n)

Log-Linear Time

90
New cards

O(n²)

Quadratic Time

91
New cards

O(2^n)

Exponential Time

92
New cards

O(n!)

Factorial Time

93
New cards

O(1) Example

Accessing an array element by index.

94
New cards

O(log n) Example

Binary Search.

95
New cards

O(n) Example

Linear Search.

96
New cards

O(n log n) Example

Merge Sort, Quicksort, Heap Sort.

97
New cards

O(n²) Example

Bubble Sort, Insertion Sort, Selection Sort.

98
New cards

O(2^n) Example

Recursive Fibonacci.

99
New cards

O(n!) Example

Traveling Salesman brute force.

100
New cards

Pre-Order Traversal

NLR (Node, Left, Right)