Prog Paradigms and Data Structures Flashcards

1
Q

Explain what is the asymptotic notation and why this is important.

A

In computer science, the asymptotic notation, represented by the Big O notation, is used to analyse the complexity of an algorithm according to the input size. It provides information about how long an algorithm will take to run in its worst-case scenario, considering a constantly growing input. This analysis can help the developer to predict how long an algorithm will take to run, helping to make better decisions concerning the algorithm design.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How linked lists work and why using pointers is important when implementing a linked list in C language.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Algorithm Design - Brute Force
Definition, Examples - Pros and Cons

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Bubble Sort - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Algorithm Design - Divide and Conquer
Definition, Examples and Diagram

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quick Sort - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Merge Sort - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Algorithm Design - Decrease and Conquer
Definition, Examples and Diagram

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Binary Search - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Selection Sort - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Insertion Sort - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Selection Sort x Insertion Sort

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Algorithm Analyses - Give the 3 points and their definitions

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Which algorithms tend to be less efficient and which tend to be more efficient?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Merge Sort - Memory Requirements and Stability

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Quick Sort - Memory Requirements and Stability

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Tim Sort - Definition and Steps

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Big O - Complexities - provide the list of how it grows with their name, definition and examples

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Bubble Sort - Big O Notation - Worst Case Scenario and Best Case Scenario

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Quick Sort - Big O Notation - Worst Case Scenario and Best Case Scenario

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Merge Sort - Big O Notation - Worst Case Scenario and Best Case Scenario

A
22
Q

Selection Sort - Big O Notation - Worst Case Scenario and Best Case Scenario

A
23
Q

Insertion Sort - Big O Notation - Worst Case Scenario and Best Case Scenario

A
24
Q

Linear Search - Big O Notation - Worst Case Scenario and Best Case Scenario

A
25
Q

Binary Search - Big O Notation - Worst Case Scenario and Best Case Scenario

A
26
Q

Efficiency Comparison - definition, key aspects, formula and how to calculate log on the calculator

A
27
Q

Structures - Definition and Code Example

A
28
Q

Pointers - Definition

A
29
Q

Referencing x Dereferencing

A
30
Q

& Ampersand x * Asterisk

A
31
Q

Pointer Application

A
32
Q

Dynamic Memory - Stack Memory x Heap

A
33
Q

Malloc () - Definition

A
34
Q

Calloc () - Definition

A
35
Q

Free () - Definition

A
36
Q

Realloc () - Definition

A
37
Q

Stacks - Definition, Diagram, Operators and Application

A
38
Q

Queues - Definition, Diagram, Operators and Application

A
39
Q

Linked Lists - Definition, Steps and the Structure

A
40
Q

Binary Tree - Definition, Diagram and Structure

A
41
Q

Imperative Languages x Declarative Languages

A
42
Q

What is a program paradigm - definition, types and examples.

A
43
Q

Procedural - Example, definition and Best Choice When:

A
44
Q

Object Oriented Programming - Example, definition and Best Choice When:

A
45
Q

OOP Principles

A
46
Q

OOP Architecture

A
47
Q

Logic - Example, definition and Best Choice When:

A
48
Q

Reactive - Example, definition and Best Choice When:

A
49
Q

Functional - Example, definition and Best Choice When:

A
50
Q

Explain the importance of choosing the right pivot.

A
51
Q

Merge and Quick sort which is recommend to the size of the array. Smaller or bigger.

A