Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
MD AZAM CA-1-1.pptx
1. 𝐌𝐔𝐑𝐒𝐇𝐈𝐃𝐀𝐁𝐀𝐃 𝐂𝐎𝐋𝐋𝐄𝐆𝐄 𝐎𝐅 𝐄𝐍
𝐆𝐈𝐍𝐄𝐄𝐑𝐈𝐍𝐆 𝐀𝐍𝐃 𝐓𝐄𝐂𝐇𝐍𝐎𝐋𝐎𝐆Y
****CA-1ASSIGNMENT****
TOPIC NAME: DATA STRUCTURE AND ALGORITHMS
NAME: MD AZAM
YEAR: 2nd
SEMETER: 3rd Le
PAPER CODE: PCC CS 301
DEPARTMENT OF COMPUTER SCIENCEAND ENGINEERING
PAPER NAME: DATA STRUCTURE AND ALGORITHMS
2. ➤What is data structure?
A data structure is basically a group of data elements that are put together
under one name which defines a particular way of storing and organizing data
in a computer to be used efficiently. A data structure is a crutial part of data
management Data structures make it easy for users to access and work with
data they need in appropriate ways. In computer science and computer
programming a data structure may be selected or designed to store data for
the purpose of using it with various algorithms. It is a way of storing and
organizing data in computers memory in such a way, so that it can be
efficiently and easily used and manipulated.
3. ➤ Why do we need Data Structure?
Data structure are necessary for designing efficient algorithms :- i)data
structure is essential for easy retrieval effective access, effective use,
effective manipulation. ii)it specify operations that can be performed on
data. iii)ait specify logical relationships among data.
4. ➤ Mention about different types of Data Structures.
There are several types of basic and advanced types of data structure all designed to arrange data to
suit specific purpose Basically there are two types of data structure:-
i) Premitive data structure
ii)Non-primitive data structure
⚫PREMITIVE DATASTRUCTURE:
Fundamental data structures like integer real, character, and Boolean which are supported by a
programming language.
⚫NON-PREMITIVE DATASTRUCTURE:
Created using primitive data structures viz. linked lists, stack, trees, and graphs. Non-primitive data
structures can further be classified:-
i) Static data structure
ii)Dynamic data structure
iii)Linear data structure
iv)Non-linear data structure.
v)Homogeneous data structure
5. ⚫Let's discuss about them:
i)STATIC DATA STRUCTURE:
A Static data structure is an organization or collection of data in memory which have a fixed size,
that is it can store a limited amount of elements or data in it Arrays is an example of static data
structure.
ii)DYNAMIC DATA STRUCTURE:
In Dynamic data structure the size of the structure is not fixed and can be modified during the
operations performed on it. Dynamic data structures are designed to facilitate change of data structures
in the run time, example:-linked list.
iii)LINEAR DATASTRUCTURE :
Linear data structure elements can be arranged and traversed in a linear sequential order in a
single run. Every elements has aunique predicase and a unique sequence.
iv)NON-LINEAR DATA STRUCTURE:
It is a form of data structure where the data elements don't stay arranged linear or sequentially.
Since the data structure is non- linear, it does not involve a single level. Therefore, a user can't traverse
all of its elements in a single run.
v)HOMOGENEOUS DATA STRUCTURE:
Homogeneous are those in which data of same type can be stored 4.Mention and define the
operations on data structured.
6. ➤Mention and define the operations on data structures.
1.Creation:-
Declaration, initialization, memory location reverse.
2. Insertion:-
Addition of new data item.
3. Deletion:-
Deletion operation means Removal of existing data item.
4.Updation:-
Update operation means updating an existing element or change of existing data item.
5.Traversal:-
Traversal operation refers visiting every element exactly.
6.Searching:-
Searching operation means finding the location of once desired element.
7.Sorting:-
Rearranging the elements in same logical order.
8.Merging.
9.Copying
7. ➤What is Algorithm? What are the characteristics?
A sequence of instructions which are carried out step-by-step .The steps may
be sequential decision Algorithms are meant to solve a problem .It isa blue
print of a program.
Characteristics of Algorithm:-
i. Accepts zero or more inputs.
ii. Produces at least one output.
iii. Contains clear and unambiguous instructions(definiteness).
iv. Instructions must terminate after certain steps (finiteness).
v. Contains basic instructions (effectiveness).
8. ➤What is analysis of ALGORITHMS ?
It is a process of deforming the complexity of an algorithm by estimating the amount of resources
(running time and money) that is required by an algorithm to complete its execution for a given
input size.
PRIORIANALYSIS:-
It is done before the algorithms implements. This type of analysis do not depend on hardware and
compiler remains same in every system. This kind of analysis is exact and absolute.
POSTERIRORANALYSIS:-
It is done after the algorithm is implemented on a machine. It's depends upon hardware and
compiler. Co from one system to another. This kind of analysis is relative and approximate.
Types of complexity:-
1.Space complexity:-
It is estimate of order of magnitude of the memory space that an algorithm will take to complete
its execute input size.
2. Time complexity:-
It is estimate of order of magnitude of the running time that is an algorithm will take to complete
input size.
Types of Time complexity
i. Best case time complexity.
ii. Worst case time complexity.
III. Average case time complexity.
IV. Amortized time complexity
9. I. BEST CASE TIME COMPLEXITY:
It is a measure of minimum running time. That an algorithm requires to complete its execution for a given input
size.
ii. WORST CASE TIMECOMPLEXITY:
It is a measure of maximum running time that an algorithm requires to complete its execution for a given input
size .
iii. AVERAGE CASETIMECOMPLEXITY:
It is measure of running time that an algorithm takes to complete its execution for a typical size of input. It is
calculated by avargeing the running time for all possible input of a particular size which depends upon the probability
distribution of a course.
IV.AMORTIZEDTIMECOMPLEXITY:
Amortize time complexity is estimated by considering the sequence of related operations and then averaging the
running time of all the operations taken over that sequence.
GROWTH RATE:
It is the rate of which the time complexity of an algorithm increases as the input size increases.
Significance :
i. It helps to classify the algorithms. ii. For comparison of efficiency of algorithms. iii. Performance analysis of
algorithms.
10. ASYMPTOTIC NOTATION
It is an abstract mathematical notation used to represent the running time
(time complexity) of the algorithm when the input size 'n' tends towards a
particular limiting value or infinity.
ASYMPTOTIC
NOTATION
BigOh
Notation(O)
BigOmega
notation
(Ω)
Theta
notation(φ)
Little-oh
notation(o)
Little-Omega
notati