Introduction to Data Structures and Algorithm Analysis Flashcards

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

flashcard set

Earn XP

Description and Tags

A comprehensive vocabulary list covering data structures, algorithm definitions, classification of types, complexity components, and asymptotic notations based on the lecture transcript.

Last updated 4:09 PM on 8/4/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

36 Terms

1
New cards

Data Structure (DS)

The way data is stored; represented by the formula DS=Organized Data+allowed operationsDS = \text{Organized Data} + \text{allowed operations}.

2
New cards

Algorithm

A step-by-step procedure that provides a solution to a given problem; it describes the way data is processed.

3
New cards

Program

A representation defined by the formula Program=Algorithm+DS\text{Program} = \text{Algorithm} + \text{DS}.

4
New cards

Data

Raw facts and figures before they have been processed, or a known fact that can be recorded and have implicit meaning.

5
New cards

Atomic Data

A single or non–decomposable entity, such as the integer 32413241.

6
New cards

Non-Atomic Data (Composite Data)

Also called structured data, it can be broken into subfields that have meaning, such as a date consisting of day, month, and year.

7
New cards

Information

An organized and processed form of data that is meaningful and logical.

8
New cards

Data Types

The information type that can be processed by the computer and supported by the programming language; refers to the kind of data variables may hold.

9
New cards

void

A data type that specifies an empty set of values; used as the type returned by functions that generate no value.

10
New cards

User-defined data types

Data types defined by the user as per requirement, such as typedef, enum, structure, and union.

11
New cards

Enumeration (enum)

A way of defining constants where members are automatically assigned integer values starting with 00 and increasing by one.

12
New cards

Structure

A tool for packing together logically related data items of different (heterogeneous) types.

13
New cards

Array

A collection of memory elements (homogeneous) where data is stored sequentially in a continuous manner.

14
New cards

Pointer

A memory location that holds the address of another variable, accessed using the operators * and &\&.

15
New cards

Data Object

A container for data values characterized by a set of attributes; they are runtime instances of data structures.

16
New cards

Abstract Data Types (ADT)

A programmer's own data type defined by the formula ADT=Type+Function Names+Behaviour of each Function\text{ADT} = \text{Type} + \text{Function Names} + \text{Behaviour of each Function}.

17
New cards

Abstraction

The generalization of operations where the essence of the process is captured while the implementation details remain hidden.

18
New cards

Encapsulation

The mapping where the definition of the type and all operations on that type are put together as one section of the program.

19
New cards

Primitive Data Structure

A set of atomic elements which do not involve any other elements as subparts, such as int, float, and char.

20
New cards

Non-Primitive Data Structure

A set of derived elements such as arrays, files, and structures.

21
New cards

Linear Data Structure

A structure where all elements form a sequence or linear ordering, and every element has a unique successor and predecessor.

22
New cards

Non-linear Data Structure

A structure representing hierarchical or network relationships where every element may have more than one predecessor or successor.

23
New cards

Static Data Structure

A structure where memory is allocated at the beginning of the program execution and freed only after the program terminates (e.g., array).

24
New cards

Dynamic Data Structure

A structure created at runtime where memory is allocated and destroyed during program execution (e.g., linked list).

25
New cards

Persistent Data Structure

A data structure that supports operations on the most recent version as well as previous versions.

26
New cards

Ephemeral Data Structure

A data structure that supports operations only on the most recent version.

27
New cards

Definiteness

The algorithm criterion stating that each instruction must be clear, unambiguous, and precisely defined.

28
New cards

Effectiveness

The algorithm criterion stating that every instruction must be basic enough to be carried out by a person using only paper and pencil.

29
New cards

Finiteness

The algorithm criterion stating that the algorithm must terminate after a finite number of steps for all cases.

30
New cards

Space Complexity

The amount of memory an algorithm needs for running; denoted as S(p)=c+spS(p) = c + sp, where cc is the fixed part and spsp is the variable part.

31
New cards

Time Complexity

The amount of time taken by a program for execution, calculated as the sum of the time taken by each executable statement; denoted by t(p)t(p).

32
New cards

Best Case Complexity

A measure of the minimum time an algorithm will require for an input of size nn.

33
New cards

Worst Case Complexity

The maximum time required for nn inputs or the time taken on the worst possible set of inputs.

34
New cards

Big O Notation (O)

Notation used to denote the upper bound or worst case of an algorithm's time complexity, defined as f(n) is O(g(n))f(n) \text{ is } O(g(n)) if f(n)×c×g(n)f(n) \times c \times g(n) for all n×n0n \times n_0.

35
New cards

Big Omega Notation (Ω)

Notation used to denote the lower bound or best case of an algorithm's time complexity, defined as f(n)× Ω (g(n))f(n) \times \text{ Ω }(g(n)) if f(n)×c×g(n)f(n) \times c \times g(n) for all n×n0n \times n_0.

36
New cards

Theta Notation (Θ)

A formal method of expressing the average bound of an algorithm's running time where c1×g(n)×f(n)×c2×g(n)c_1 \times g(n) \times f(n) \times c_2 \times g(n) for all n×n0n \times n_0.