COMSCI 1201 LEC (Data Structures & Algorithms)

4.2(5)
studied byStudied by 56 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/51

flashcard set

Earn XP

Description and Tags

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

52 Terms

1
New cards
refers to a collection of individual values that can take
many forms, such as text, images, audio, or video, usually
represented with the help of characters such as alphabets,
digits, or special characters.
Data
2
New cards
examples of data are:
names, ages, prices, costs, numbers of items sold, employee names, etc.
3
New cards
Data themselves are fairly useless, but when these data are processed or organized, they become useful and is now called__
information.
4
New cards
data needs to be __ to provide information.
organized
5
New cards
__ is a storage that is used to store and organize data. It is a way of arranging data on a computer so that it can be accessed and updated efficiently.
data structure
6
New cards
it easy for users to access and work with the data they need in appropriate ways.
data structure
7
New cards
Data Structure It is not only used for organizing the data but also for ___using various algorithms.
processing, retrieving, and storing data
8
New cards
Data structure is classified into two types
primitive and
non-primitive.
9
New cards
Also known as basic data structure, it contains fundamental
data types that can only hold single data type values.
Primitive data structure
10
New cards
Examples of primitive data
integer,
character, boolean, float,
double, long, etc.
11
New cards
a data structure that focuses on forming a set or collection of data elements that is either **homogeneous**
or **heterogeneous**
Non-primitive data structure
12
New cards
What is Homogenous and its example?
(same data type. ex. integer array num)
13
New cards
What is Heterogeneous

and its example?
(different data types. ex. structure Student that contains
char array name, integer age, etc.)
14
New cards
Non-primitive data structure also known as ___, as they are derived on primitive ones.
derived data structure
15
New cards
A ___ can be stored using the non- primitive data structures.
large number of values
16
New cards
The data stored can also be manipulated using various
operations like
* insertion,
* deletion,
* searching,
* sorting,
17
New cards
Non-primitive data structures are divided into two
categories:
linear and non-linear data structures
18
New cards
a type of data structure in which data elements are
arranged sequentially or linearly.
Linear data structure
19
New cards
Since elements are arranged in a sequential or particular order, linear data structure is __
easier to access.
20
New cards
Examples of linear data structures are__
array, stack, queue, and linked list.
21
New cards
When the elements of a data structure doesn't stay sequentially or linearly, the data structure is called to be __
Non-linear data structure
22
New cards
Since the data structure is non-linear, it does not involve a__. Therefore, they can’t_ all of its elements in a single run.
* single level
* traverse
23
New cards
examples of non-linear data structures.
Trees and graphs
24
New cards
What are the Data Structure Operations ( enumerate)
* Navigating
* Searching
* Insertion
* Deletion
* Sorting
* Merging
25
New cards
Accessing each data element exactly once so that certain
items in the data may be processed
Navigating
26
New cards
Finding the location of the data element or key in the structure.
Searching
27
New cards
Adding a new data element to the structure
Insertion
28
New cards
Removing a data element from the structure
Deletion
29
New cards
Arrange the data elements in a logical order
(ascending/descending)
Sorting
30
New cards
Combining data elements from two or more data
structures into one
Merging
31
New cards
defined as a step-by-step procedure or
method with a finite set of instructions to accomplish a
particular task.
algorithm
32
New cards
Basically, it is not the complete code, rather it is the__ that can be implemented to solve a particular problem.
logic
33
New cards
While defining an algorithm, steps are written in human understandable language and independent of any programming language, which are usually represented by using___
flowcharts or pseudocode.
34
New cards
Algorithm =
Algorithm = Input + Process + Output
35
New cards
What are the Characteristics of an Algorithm ( enumerate)
* Unambiguous
* Inputs
* Outputs
* Correctness
* Finiteness
* Effectiveness
* Language Independent
36
New cards
Instructions in an algorithm should be clear, simple, and
straightforward.
Unambiguous
37
New cards
An algorithm should have some input values.
Inputs
38
New cards
At the end of an algorithm, you must have one or more
outcomes.
Outputs
39
New cards
An algorithm is designed correctly if it receives valid input,
terminates, and always returns the correct output.
Correctness
40
New cards
The algorithm should contain a limited and countable number
of instructions and should terminate after a finite time.
Finiteness
41
New cards
Each step of the algorithm should be effective and efficient
enough to produce results.
Effectiveness
42
New cards
The effectiveness of an algorithm can be evaluated with the
help of two important parameters:

1. Time Complexity
2. Space Complexity
43
New cards
This refers to the amount of time taken by the computer to
run the algorithm.
Time Complexity
44
New cards
the total space taken or amount of computational memory needed by the algorithm to solve a problem.
Space Complexity
45
New cards
Instructions in an algorithm can be implemented in any
language and produce the same results.
Language Independent
46
New cards
Data Flow of an Algorithm (enumerate)
* Problem
* Algorithm
* Input
* Processing Unit
* Output
47
New cards
usually gives the programmer an
idea of the issue at hand, the available resources and the
motivation to come with a plan to solve it.
Problem
48
New cards
programmer designs the
step by step procedure to solve the problem efficiently.
Algorithm
49
New cards
algorithm is designed and the relevant inputs are
supplied.
Input
50
New cards
receives these inputs and processes them as per the designed algorithm.
Processing Unit
51
New cards
receive the
favorable output of our problem statement
Output
52
New cards
What Makes a Good Algorithm?
• It must be correct
• It must be finite (in terms of time and size)
• It must terminate
• It must be unambiguous
• It must be space and time efficient