COMPUTER SCIENCE ACADEMY
DATA STRUCTURE
FUNDAMENTAL CONCEPTS
Attributes: These are the properties or characteristics of an object
(entity). For example, a mobile phone's attributes include its Name,
Company, Price, RAM, and Operating System.
Data: The specific values assigned to these attributes (e.g., Company
= "Apple") are referred to as data.
Data Items: A data item is a single unit of values. These are divided
into two types:
o Group Items: Data that can be further divided into sub-items,
such as a "Full Name" (First, Middle, Last) or a "Date of Birth"
(Day, Month, Year).
o Elementary Items: Data that cannot be divided into sub-parts,
such as Age, Mobile Number, or Pin Code.
2.Entities and Information
Entity: An entity is anything that has specific attributes and values
assigned to them, such as a student or a teacher.
Information: Data becomes information when it is associated with an
attribute to become meaningful. For instance, the number "16" is
just data, but "Age = 16" is information.
3.Data Organization: Fields, Records, and Files
The sources define a hierarchy for how data is organized:
1. Field: The smallest unit of information representing an attribute
where data is assigned (e.g., Name, Roll Number, or Pin Code).
2. Record: A collection of field values for a single entity, such as all the
information pertaining to one specific student.
3. File: A collection of multiple records, similar to an attendance sheet
containing the records of an entire class.
4.Primary Key
A Primary Key is a specific field that contains a unique value used to differentiate one
record from another. Examples include Roll Numbers, Admission Numbers, or Aadhaar
Numbers, which ensure that even if two people have the same name, their records remain
distinct.
5.Definition and Types of Data Structures
A Data Structure is defined as the logical or mathematical organization of data within a
computer. It is categorized into two main groups:
, Linear Data Structures: These include Arrays, Pointers, Records, and
Linked Lists.
Non-Linear Data Structures: These include Trees and Binary Trees.
DATA STRUCYURE OPERATIONS
1. Traversing
Traversing involves accessing each element of the data structure exactly once so that certain
items of data can be processed. An example of this is visiting every number in an array to
increment their values by one.
2. Inserting
This operation is the process of adding a new data element to the existing structure. For
instance, adding a sixth element to an array that previously only held five increases its size or
length.
3. Deleting
Deleting is the opposite of inserting; it is the process of removing an existing element from
the data structure.
4. Searching
Searching involves finding the location of a specific element within the structure. This can
be done by looking for a specific "key" value or by finding all elements that satisfy a
particular condition (such as finding all even numbers in a list).
5. Sorting
Sorting is the process of arranging the elements in a logical order. This order can be:
Numerical: Ascending or descending order.
Alphabetical: Arranging text data from A to Z or Z to A.
6. Merging
Merging is the operation of combining two different files or records into one single file.
This is possible when the two sets of data are of the same type, such as combining two
separate lists of integer numbers into one larger array.
Algorithmic Notation
To perform these operations, programmers use Algorithmic Notation. An algorithm is
defined as a finite, step-by-step list of well-defined instructions for solving a particular
problem. The sources outline that a standard algorithm includes:
A Name and Variables (parameters).
A clear statement of the Purpose of the algorithm.
Numbered steps, beginning with an input/read step and ending with
a stop or exit statement.
CONTROL STRUCTURES
1. Sequence Logic (Linear Logic)
In a sequence flow, instructions or "modules" (sets of statements) are executed one after
another in a specific order.
There is no branching or skipping; the program moves directly from
one step to the next until the algorithm ends.
Common examples include simple calculations like the addition of
two numbers, finding the area of a circle, or calculating an average.
, 2. Selection Logic (Conditional Flow)
This structure selects a specific path or module to execute based on whether a given
condition is true or false. There are three main sub-types:
Single Alternative: A single condition is checked. If it is true, a
specific module is executed; otherwise, it is skipped.
Double Alternative (If-Else): If the condition is true, one module is
executed (the "True" part). If it is false, a different module is
executed (the "Else" part).
Multiple Alternative: This involves checking multiple conditions in a
sequence (often called Nested If-Else). Only the module
corresponding to the first true condition is executed.
3. Iteration Logic (Repetitive Flow)
This structure is used to repeat a specific module multiple times as long as a certain
condition remains satisfied. The sources describe two primary ways to implement this:
While Loop: This loop requires a counter variable (or index variable) to be
initialized before the loop starts. The condition is checked at the beginning of
each repeat, and the counter must be manually incremented or decremented
within the loop.
For Loop: This is a more compact version where initialization, the condition,
and the increment/decrement are all handled in a single statement (e.g.,
Repeat for K = R to S by T). While the syntax is different, the underlying
logic and flow are identical to the While loop.
ARRAY
1. Definition of an Array
An Array (also called a Linear Array) is a linear data structure defined as a collection of
finite and homogeneous data elements.
Finite: It contains a limited or fixed number of elements.
Homogeneous: All elements in the array must be of the same data
type (e.g., all integers or all decimals).
Successive Storage: The elements are stored in successive (back-to-
back) memory locations.
2. Key Terminology
Index Number: Each element is referred to by a specific number
called an index or subscript. In this curriculum, index numbering
typically starts from 1, though it can start from 0.
Lower Bound (LB): The smallest index number in the array (usually
1).
Upper Bound (UB): The highest index number in the array.
Length (Size): The total number of elements in the array. It is
calculated using the formula: Length = UB - LB + 1.
3. Subscript Notation
Elements are accessed using Subscript Notation, where the array name is followed by the
index in parentheses or brackets, such as Marks or Data[K]. For example, if Marks = 25,
it means the first element of the "Marks" array holds the value 25.
DATA STRUCTURE
FUNDAMENTAL CONCEPTS
Attributes: These are the properties or characteristics of an object
(entity). For example, a mobile phone's attributes include its Name,
Company, Price, RAM, and Operating System.
Data: The specific values assigned to these attributes (e.g., Company
= "Apple") are referred to as data.
Data Items: A data item is a single unit of values. These are divided
into two types:
o Group Items: Data that can be further divided into sub-items,
such as a "Full Name" (First, Middle, Last) or a "Date of Birth"
(Day, Month, Year).
o Elementary Items: Data that cannot be divided into sub-parts,
such as Age, Mobile Number, or Pin Code.
2.Entities and Information
Entity: An entity is anything that has specific attributes and values
assigned to them, such as a student or a teacher.
Information: Data becomes information when it is associated with an
attribute to become meaningful. For instance, the number "16" is
just data, but "Age = 16" is information.
3.Data Organization: Fields, Records, and Files
The sources define a hierarchy for how data is organized:
1. Field: The smallest unit of information representing an attribute
where data is assigned (e.g., Name, Roll Number, or Pin Code).
2. Record: A collection of field values for a single entity, such as all the
information pertaining to one specific student.
3. File: A collection of multiple records, similar to an attendance sheet
containing the records of an entire class.
4.Primary Key
A Primary Key is a specific field that contains a unique value used to differentiate one
record from another. Examples include Roll Numbers, Admission Numbers, or Aadhaar
Numbers, which ensure that even if two people have the same name, their records remain
distinct.
5.Definition and Types of Data Structures
A Data Structure is defined as the logical or mathematical organization of data within a
computer. It is categorized into two main groups:
, Linear Data Structures: These include Arrays, Pointers, Records, and
Linked Lists.
Non-Linear Data Structures: These include Trees and Binary Trees.
DATA STRUCYURE OPERATIONS
1. Traversing
Traversing involves accessing each element of the data structure exactly once so that certain
items of data can be processed. An example of this is visiting every number in an array to
increment their values by one.
2. Inserting
This operation is the process of adding a new data element to the existing structure. For
instance, adding a sixth element to an array that previously only held five increases its size or
length.
3. Deleting
Deleting is the opposite of inserting; it is the process of removing an existing element from
the data structure.
4. Searching
Searching involves finding the location of a specific element within the structure. This can
be done by looking for a specific "key" value or by finding all elements that satisfy a
particular condition (such as finding all even numbers in a list).
5. Sorting
Sorting is the process of arranging the elements in a logical order. This order can be:
Numerical: Ascending or descending order.
Alphabetical: Arranging text data from A to Z or Z to A.
6. Merging
Merging is the operation of combining two different files or records into one single file.
This is possible when the two sets of data are of the same type, such as combining two
separate lists of integer numbers into one larger array.
Algorithmic Notation
To perform these operations, programmers use Algorithmic Notation. An algorithm is
defined as a finite, step-by-step list of well-defined instructions for solving a particular
problem. The sources outline that a standard algorithm includes:
A Name and Variables (parameters).
A clear statement of the Purpose of the algorithm.
Numbered steps, beginning with an input/read step and ending with
a stop or exit statement.
CONTROL STRUCTURES
1. Sequence Logic (Linear Logic)
In a sequence flow, instructions or "modules" (sets of statements) are executed one after
another in a specific order.
There is no branching or skipping; the program moves directly from
one step to the next until the algorithm ends.
Common examples include simple calculations like the addition of
two numbers, finding the area of a circle, or calculating an average.
, 2. Selection Logic (Conditional Flow)
This structure selects a specific path or module to execute based on whether a given
condition is true or false. There are three main sub-types:
Single Alternative: A single condition is checked. If it is true, a
specific module is executed; otherwise, it is skipped.
Double Alternative (If-Else): If the condition is true, one module is
executed (the "True" part). If it is false, a different module is
executed (the "Else" part).
Multiple Alternative: This involves checking multiple conditions in a
sequence (often called Nested If-Else). Only the module
corresponding to the first true condition is executed.
3. Iteration Logic (Repetitive Flow)
This structure is used to repeat a specific module multiple times as long as a certain
condition remains satisfied. The sources describe two primary ways to implement this:
While Loop: This loop requires a counter variable (or index variable) to be
initialized before the loop starts. The condition is checked at the beginning of
each repeat, and the counter must be manually incremented or decremented
within the loop.
For Loop: This is a more compact version where initialization, the condition,
and the increment/decrement are all handled in a single statement (e.g.,
Repeat for K = R to S by T). While the syntax is different, the underlying
logic and flow are identical to the While loop.
ARRAY
1. Definition of an Array
An Array (also called a Linear Array) is a linear data structure defined as a collection of
finite and homogeneous data elements.
Finite: It contains a limited or fixed number of elements.
Homogeneous: All elements in the array must be of the same data
type (e.g., all integers or all decimals).
Successive Storage: The elements are stored in successive (back-to-
back) memory locations.
2. Key Terminology
Index Number: Each element is referred to by a specific number
called an index or subscript. In this curriculum, index numbering
typically starts from 1, though it can start from 0.
Lower Bound (LB): The smallest index number in the array (usually
1).
Upper Bound (UB): The highest index number in the array.
Length (Size): The total number of elements in the array. It is
calculated using the formula: Length = UB - LB + 1.
3. Subscript Notation
Elements are accessed using Subscript Notation, where the array name is followed by the
index in parentheses or brackets, such as Marks or Data[K]. For example, if Marks = 25,
it means the first element of the "Marks" array holds the value 25.