LECTURE 1 – INTRODUCTION TO DATA STRUCTURES & ALGORITHMS
,Data Structure - Introduction
Data Structure can be defined as the group of data elements which provides an efficient w
of storing and organizing data in the computer so that it can be used efficiently.
Some examples of Data Structures are arrays, Linked List, Stack, Queue, etc.
Data Structures are widely used in almost every aspect of Computer Science i.e. Operatin
System, Compiler Design, Artificial intelligence, Graphics and many more.
Data Structures are the main part of many computer science algorithms as they enable th
programmers to handle the data in an efficient way.
It plays a vital role in enhancing the performance of a software or a program as the main
function of the software is to store and retrieve the user's data as fast as possible.
BCSC 1204 - DATA STRUCTURE & ALGORITHMS
,Basic Terminology
Data structures are the building blocks of any program or the software. Choosing the appropriate d
structure for a program is the most difficult task for a programmer. Following terminology is used a
as data structures are concerned
Data: Data can be defined as an elementary value or the collection of values, for example,
student's name and its id are the data about the student.
Group Items: Data items which have subordinate data items are called Group item, for examp
name of a student can have first name and the last name.
Record: Record can be defined as the collection of various data items, for example, if we talk
about the student entity, then its name, address, course and marks can be grouped together t
form the record for the student.
File: A File is a collection of various records of one type of entity, for example, if there are 60
employees in the class, then there will be 20 records in the related file where each record
contains the data about each employee.
Attribute and Entity: An entity represents the class of certain objects. it contains various
attributes. Each attribute represents the particular property of that entity.
Field: Field is a single elementary unit of information representing the attribute of an entity.
BCSC 1204 - DATA STRUCTURE & ALGORITHMS
, Need of Data Structures
As applications are getting complex and amount of data is increasing day by day, there may ar
the following problems:
Processor speed: To handle very large amount of data, high speed processing is required,
as the data is growing day by day to the billions of files per entity, processor may fail to de
with that much amount of data.
Data Search: Consider an inventory size of 106 items in a store, If our application needs to
search for a particular item, it needs to traverse 106 items every time, results in slowing
down the search process.
Multiple requests: If thousands of users are searching the data simultaneously on a web
server, then there are the chances that a very large server can be failed during that proce
in order to solve the above problems, data structures are used.
Data is organized to form a data structure in such a way that all items are not required to
searched and required data can be searched instantly.
BCSC 1204 - DATA STRUCTURE & ALGORITHMS