SlideShare a Scribd company logo
ALGORITHMIC EFFICIENCY
Prof. K. Adisesha
BE, M.Sc., M.Th., NET, (Ph.D.)
2
Learning objectives
• Introduction
• Algorithm Definition
• What is computational Complexity
• Estimating Complexity of Algorithm
• Asymptotic Notations
• Complexity of an Algorithm
3
Algorithm
What is an Algorithm?
• An algorithm is a step-by-step procedure for solving a
problem in a finite amount of time.
• The word algorithm comes from the name of a Persian
Mathematician Abu Ja’far Mohammed ibn-I Musa al
Khowarizmi.
• For a given problem:
 There can be more than one solution (more than one
algorithm) .
 An algorithm can be implemented using different
programming languages on different platforms.
4
Algorithm
Designing of an Algorithm
• Design of an algorithm is an area of computer science which
minimizes the cost.
• Always design algorithms which minimize the cost.
Analysis of Algorithm
• Analysis of Algorithms is the area of computer science that
provides tools to analyze the efficiency of different methods
of solutions.
• In short predict the cost of an algorithm in terms of
resources and performance is called analysis of Algorithm.
5
Properties of Algorithm
Donald Ervin Knuth has given a list of five properties for an
algorithm, these properties are:
1. FINITENESS
2. DEFINITENESS
3. INPUT
4. OUTPUT
5. EFFECTIVENESS
6
Properties of Algorithm
FINITENESS
 An algorithm must always terminate after a finite number of steps.
 It means after every step one reach closer to solution of the problem
and after a finite number of steps algorithm reaches to an end point.
DEFINITENESS
 Each step of an algorithm must be precisely defined.
 It is done by well thought actions to be performed at each step of
the algorithm.
 Also the actions are defined unambiguously for each activity in the
algorithm.
INPUT
 Any operation you perform need some beginning value/ quantities
associated with different activities in the operation.
 So the value/quantities are given to the algorithm before it begins.
7
Properties of Algorithm
OUTPUT
 One always expects output/result (expected value/quantities) in
terms of output from an algorithm.
 The result may be obtained at different stages of the algorithm.
 Result is obtained from the intermediate stage of the operation then
it is known as intermediate result
 Result obtained at the end of algorithm is known as end result.
 The output is expected value/quantities always have a specified
relation to the inputs.
EFFECTIVENESS
 Algorithms to be developed/written using basic operations.
 Algorithms operations should be done exactly and in a finite amount
of time by a person, by using paper and pencil only.
8
Performance of an algorithm depends on
many factors:
• Internal Factors: Specify algorithm’s efficiency in terms of
 Time required to run
 Space (Memory)required to run
• External Factors: affect the algorithm’s performance
 Size of the input to the algorithm
 Speed of computer on which it is run
 Quality of the Computer
Efficiency of Algorithm
9
There are two aspects of algorithmic performance or
efficiency:
• TIME COMPLEXITY: It is essentially efficiency, or how long a
program function takes to process a given input.
 Instructions take time.
 How fast does the algorithm perform?
 What affects its runtime?
• SPACE COMPLEXITY: of an algorithm is total space taken by the
algorithm with respect to the input size. Space complexity includes
both Auxiliary space and space used by input.
 Data structures take space
 What kind of data structures can be used?
 How does choice of data structure affect the runtime?
Internal Factors
10
Asymptotic Analysis:
• In Asymptotic Analysis, we evaluate the performance of an
algorithm in terms of input size
• Asymptotic analysis of an algorithm refers to defining the
mathematical framing of its run-time performance.
• Usually, the time required by an algorithm falls under three
types −
 Best Case − Minimum time required for program execution.
 Average Case − Average time required for program execution.
 Worst Case − Maximum time required for program execution.
Asymptotic Analysis
11
Asymptotic Analysis:
• Following are the commonly used asymptotic notations to
calculate the running time complexity of an algorithm.
Asymptotic Analysis
12
Asymptotic Analysis:
• Following graph is commonly used to calculate the running
time complexity of an algorithm.
Asymptotic Analysis
13
• Big O specifically describes the worst-case scenario, and can
be used to describe the execution time required or the space
used (e.g. in memory or on disk) by an algorithm.
• Big O complexity can be visualized with this graph:
Ο Notation ( Big Oh Notation)
14
• Big Ω describes the set of all algorithms that run no better
than a certain speed (it’s a lower bound)
• It measures the best case time complexity or the best amount
of time an algorithm can possibly take to complete.
• Best case performance of an algorithm given function g(n),
we denote by Ω(g(n)) the set of functions.
Ω (g(n)) = {f(n): there exist positive constants c and n0
such that 0 <= c*g(n) <= f(n) for all n >= n0}.
• Best case performance of an algorithm is generally not useful,
the Omega notation is the least used notation among all
three.
Omega Notation - Ω
15
θ notation
• You can use the big-Theta notation to describe the average-case
complexity.
• The θ notation describes asymptotic tight bounds
• If an algorithm has the average-case time complexity of,
say, 3*n^2 - 5n + 13 ,
then it is true that its average-case time complexity is
Theta(n^2) , O(n^2) , and O(n^3)
Theta Notation - θ
16
TIME COMPLEXITY OF SORTING ALGORITHMS
TIME COMPLEXITY OF SEARCHING ALGORITHMS
TIME COMPLEXITY
17
SPACE COMPLEXITY
SPACE COMPLEXITY OF SEARCHING AND SORTING ALGORITHMS
18
• We learned about the Algorithm Definition
• What is computational Complexity
• Estimating Complexity of Algorithm
• Asymptotic Notations
• Complexity of an Algorithm
Thank you
Conclusion!

More Related Content

What's hot

Sets and disjoint sets union123
Sets and disjoint sets union123Sets and disjoint sets union123
Sets and disjoint sets union123
Ankita Goyal
 

What's hot (20)

Data Structures and Algorithm Analysis
Data Structures  and  Algorithm AnalysisData Structures  and  Algorithm Analysis
Data Structures and Algorithm Analysis
 
Hamiltonian path
Hamiltonian pathHamiltonian path
Hamiltonian path
 
Lecture 5 sorting and searching
Lecture 5   sorting and searchingLecture 5   sorting and searching
Lecture 5 sorting and searching
 
List,tuple,dictionary
List,tuple,dictionaryList,tuple,dictionary
List,tuple,dictionary
 
Python Data Structures and Algorithms.pptx
Python Data Structures and Algorithms.pptxPython Data Structures and Algorithms.pptx
Python Data Structures and Algorithms.pptx
 
Little o and little omega
Little o and little omegaLittle o and little omega
Little o and little omega
 
Python: Modules and Packages
Python: Modules and PackagesPython: Modules and Packages
Python: Modules and Packages
 
Python programming : Strings
Python programming : StringsPython programming : Strings
Python programming : Strings
 
sorting and its types
sorting and its typessorting and its types
sorting and its types
 
Complexity of Algorithm
Complexity of AlgorithmComplexity of Algorithm
Complexity of Algorithm
 
Sets and disjoint sets union123
Sets and disjoint sets union123Sets and disjoint sets union123
Sets and disjoint sets union123
 
Collision in Hashing.pptx
Collision in Hashing.pptxCollision in Hashing.pptx
Collision in Hashing.pptx
 
Introduction TO Finite Automata
Introduction TO Finite AutomataIntroduction TO Finite Automata
Introduction TO Finite Automata
 
Looping statement in python
Looping statement in pythonLooping statement in python
Looping statement in python
 
Java program structure
Java program structureJava program structure
Java program structure
 
Tuples in Python
Tuples in PythonTuples in Python
Tuples in Python
 
Interface in java
Interface in javaInterface in java
Interface in java
 
Sorting algorithms
Sorting algorithmsSorting algorithms
Sorting algorithms
 
Algorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IAlgorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms I
 
Analysis of algorithms
Analysis of algorithmsAnalysis of algorithms
Analysis of algorithms
 

Similar to Python algorithm

FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...
AntareepMajumder
 

Similar to Python algorithm (20)

2. Introduction to Algorithm.pptx
2. Introduction to Algorithm.pptx2. Introduction to Algorithm.pptx
2. Introduction to Algorithm.pptx
 
Unit 1, ADA.pptx
Unit 1, ADA.pptxUnit 1, ADA.pptx
Unit 1, ADA.pptx
 
Algorithm Analysis.pdf
Algorithm Analysis.pdfAlgorithm Analysis.pdf
Algorithm Analysis.pdf
 
Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis
 
Design and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptxDesign and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptx
 
Unit ii algorithm
Unit   ii algorithmUnit   ii algorithm
Unit ii algorithm
 
Algorithm.pptx
Algorithm.pptxAlgorithm.pptx
Algorithm.pptx
 
Algorithm.pptx
Algorithm.pptxAlgorithm.pptx
Algorithm.pptx
 
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_25-07-2022_Fu...
 
Introduction to algorithms
Introduction to algorithmsIntroduction to algorithms
Introduction to algorithms
 
Analysis and Design of Algorithms
Analysis and Design of AlgorithmsAnalysis and Design of Algorithms
Analysis and Design of Algorithms
 
Algorithms & Complexity Calculation
Algorithms & Complexity CalculationAlgorithms & Complexity Calculation
Algorithms & Complexity Calculation
 
Lec1.ppt
Lec1.pptLec1.ppt
Lec1.ppt
 
Algorithm Analysis.pdf
Algorithm Analysis.pdfAlgorithm Analysis.pdf
Algorithm Analysis.pdf
 
Algorithm analysis and design
Algorithm analysis and designAlgorithm analysis and design
Algorithm analysis and design
 
Design and Analysis of Algorithm ppt for unit one
Design and Analysis of Algorithm ppt for unit oneDesign and Analysis of Algorithm ppt for unit one
Design and Analysis of Algorithm ppt for unit one
 
Algorithm analysis in fundamentals of data structure
Algorithm analysis in fundamentals of data structureAlgorithm analysis in fundamentals of data structure
Algorithm analysis in fundamentals of data structure
 
Algorithm - Introduction
Algorithm - IntroductionAlgorithm - Introduction
Algorithm - Introduction
 
Chapter 09 design and analysis of algorithms
Chapter 09  design and analysis of algorithmsChapter 09  design and analysis of algorithms
Chapter 09 design and analysis of algorithms
 
Introduction to data structures and Algorithm
Introduction to data structures and AlgorithmIntroduction to data structures and Algorithm
Introduction to data structures and Algorithm
 

More from Prof. Dr. K. Adisesha

More from Prof. Dr. K. Adisesha (20)

Software Engineering notes by K. Adisesha.pdf
Software Engineering notes by K. Adisesha.pdfSoftware Engineering notes by K. Adisesha.pdf
Software Engineering notes by K. Adisesha.pdf
 
Software Engineering-Unit 1 by Adisesha.pdf
Software Engineering-Unit 1 by Adisesha.pdfSoftware Engineering-Unit 1 by Adisesha.pdf
Software Engineering-Unit 1 by Adisesha.pdf
 
Software Engineering-Unit 2 "Requirement Engineering" by Adi.pdf
Software Engineering-Unit 2 "Requirement Engineering" by Adi.pdfSoftware Engineering-Unit 2 "Requirement Engineering" by Adi.pdf
Software Engineering-Unit 2 "Requirement Engineering" by Adi.pdf
 
Software Engineering-Unit 3 "System Modelling" by Adi.pdf
Software Engineering-Unit 3 "System Modelling" by Adi.pdfSoftware Engineering-Unit 3 "System Modelling" by Adi.pdf
Software Engineering-Unit 3 "System Modelling" by Adi.pdf
 
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
Software Engineering-Unit 4 "Architectural Design" by Adi.pdfSoftware Engineering-Unit 4 "Architectural Design" by Adi.pdf
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
 
Software Engineering-Unit 5 "Software Testing"by Adi.pdf
Software Engineering-Unit 5 "Software Testing"by Adi.pdfSoftware Engineering-Unit 5 "Software Testing"by Adi.pdf
Software Engineering-Unit 5 "Software Testing"by Adi.pdf
 
Computer Networks Notes by -Dr. K. Adisesha
Computer Networks Notes by -Dr. K. AdiseshaComputer Networks Notes by -Dr. K. Adisesha
Computer Networks Notes by -Dr. K. Adisesha
 
CCN Unit-1&2 Data Communication &Networking by K. Adiaesha
CCN Unit-1&2 Data Communication &Networking by K. AdiaeshaCCN Unit-1&2 Data Communication &Networking by K. Adiaesha
CCN Unit-1&2 Data Communication &Networking by K. Adiaesha
 
CCN Unit-3 Data Link Layer by Dr. K. Adisesha
CCN Unit-3 Data Link Layer by Dr. K. AdiseshaCCN Unit-3 Data Link Layer by Dr. K. Adisesha
CCN Unit-3 Data Link Layer by Dr. K. Adisesha
 
CCN Unit-4 Network Layer by Dr. K. Adisesha
CCN Unit-4 Network Layer by Dr. K. AdiseshaCCN Unit-4 Network Layer by Dr. K. Adisesha
CCN Unit-4 Network Layer by Dr. K. Adisesha
 
CCN Unit-5 Transport & Application Layer by Adi.pdf
CCN Unit-5 Transport & Application Layer by Adi.pdfCCN Unit-5 Transport & Application Layer by Adi.pdf
CCN Unit-5 Transport & Application Layer by Adi.pdf
 
Introduction to Computers.pdf
Introduction to Computers.pdfIntroduction to Computers.pdf
Introduction to Computers.pdf
 
R_Programming.pdf
R_Programming.pdfR_Programming.pdf
R_Programming.pdf
 
Scholarship.pdf
Scholarship.pdfScholarship.pdf
Scholarship.pdf
 
Operating System-2 by Adi.pdf
Operating System-2 by Adi.pdfOperating System-2 by Adi.pdf
Operating System-2 by Adi.pdf
 
Operating System-1 by Adi.pdf
Operating System-1 by Adi.pdfOperating System-1 by Adi.pdf
Operating System-1 by Adi.pdf
 
Operating System-adi.pdf
Operating System-adi.pdfOperating System-adi.pdf
Operating System-adi.pdf
 
Data_structure using C-Adi.pdf
Data_structure using C-Adi.pdfData_structure using C-Adi.pdf
Data_structure using C-Adi.pdf
 
JAVA PPT -2 BY ADI.pdf
JAVA PPT -2 BY ADI.pdfJAVA PPT -2 BY ADI.pdf
JAVA PPT -2 BY ADI.pdf
 
JAVA PPT -5 BY ADI.pdf
JAVA PPT -5 BY ADI.pdfJAVA PPT -5 BY ADI.pdf
JAVA PPT -5 BY ADI.pdf
 

Recently uploaded

Recently uploaded (20)

Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General QuizPragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
 
Sectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfSectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdf
 
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptBasic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
 
How to the fix Attribute Error in odoo 17
How to the fix Attribute Error in odoo 17How to the fix Attribute Error in odoo 17
How to the fix Attribute Error in odoo 17
 
Salient features of Environment protection Act 1986.pptx
Salient features of Environment protection Act 1986.pptxSalient features of Environment protection Act 1986.pptx
Salient features of Environment protection Act 1986.pptx
 
Benefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational ResourcesBenefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational Resources
 
2024_Student Session 2_ Set Plan Preparation.pptx
2024_Student Session 2_ Set Plan Preparation.pptx2024_Student Session 2_ Set Plan Preparation.pptx
2024_Student Session 2_ Set Plan Preparation.pptx
 
Basic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
Basic Civil Engg Notes_Chapter-6_Environment Pollution & EngineeringBasic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
Basic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxStudents, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
 
The impact of social media on mental health and well-being has been a topic o...
The impact of social media on mental health and well-being has been a topic o...The impact of social media on mental health and well-being has been a topic o...
The impact of social media on mental health and well-being has been a topic o...
 
Operations Management - Book1.p - Dr. Abdulfatah A. Salem
Operations Management - Book1.p  - Dr. Abdulfatah A. SalemOperations Management - Book1.p  - Dr. Abdulfatah A. Salem
Operations Management - Book1.p - Dr. Abdulfatah A. Salem
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
slides CapTechTalks Webinar May 2024 Alexander Perry.pptx
slides CapTechTalks Webinar May 2024 Alexander Perry.pptxslides CapTechTalks Webinar May 2024 Alexander Perry.pptx
slides CapTechTalks Webinar May 2024 Alexander Perry.pptx
 
B.ed spl. HI pdusu exam paper-2023-24.pdf
B.ed spl. HI pdusu exam paper-2023-24.pdfB.ed spl. HI pdusu exam paper-2023-24.pdf
B.ed spl. HI pdusu exam paper-2023-24.pdf
 
UNIT – IV_PCI Complaints: Complaints and evaluation of complaints, Handling o...
UNIT – IV_PCI Complaints: Complaints and evaluation of complaints, Handling o...UNIT – IV_PCI Complaints: Complaints and evaluation of complaints, Handling o...
UNIT – IV_PCI Complaints: Complaints and evaluation of complaints, Handling o...
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
 
Open Educational Resources Primer PowerPoint
Open Educational Resources Primer PowerPointOpen Educational Resources Primer PowerPoint
Open Educational Resources Primer PowerPoint
 

Python algorithm

  • 1. ALGORITHMIC EFFICIENCY Prof. K. Adisesha BE, M.Sc., M.Th., NET, (Ph.D.)
  • 2. 2 Learning objectives • Introduction • Algorithm Definition • What is computational Complexity • Estimating Complexity of Algorithm • Asymptotic Notations • Complexity of an Algorithm
  • 3. 3 Algorithm What is an Algorithm? • An algorithm is a step-by-step procedure for solving a problem in a finite amount of time. • The word algorithm comes from the name of a Persian Mathematician Abu Ja’far Mohammed ibn-I Musa al Khowarizmi. • For a given problem:  There can be more than one solution (more than one algorithm) .  An algorithm can be implemented using different programming languages on different platforms.
  • 4. 4 Algorithm Designing of an Algorithm • Design of an algorithm is an area of computer science which minimizes the cost. • Always design algorithms which minimize the cost. Analysis of Algorithm • Analysis of Algorithms is the area of computer science that provides tools to analyze the efficiency of different methods of solutions. • In short predict the cost of an algorithm in terms of resources and performance is called analysis of Algorithm.
  • 5. 5 Properties of Algorithm Donald Ervin Knuth has given a list of five properties for an algorithm, these properties are: 1. FINITENESS 2. DEFINITENESS 3. INPUT 4. OUTPUT 5. EFFECTIVENESS
  • 6. 6 Properties of Algorithm FINITENESS  An algorithm must always terminate after a finite number of steps.  It means after every step one reach closer to solution of the problem and after a finite number of steps algorithm reaches to an end point. DEFINITENESS  Each step of an algorithm must be precisely defined.  It is done by well thought actions to be performed at each step of the algorithm.  Also the actions are defined unambiguously for each activity in the algorithm. INPUT  Any operation you perform need some beginning value/ quantities associated with different activities in the operation.  So the value/quantities are given to the algorithm before it begins.
  • 7. 7 Properties of Algorithm OUTPUT  One always expects output/result (expected value/quantities) in terms of output from an algorithm.  The result may be obtained at different stages of the algorithm.  Result is obtained from the intermediate stage of the operation then it is known as intermediate result  Result obtained at the end of algorithm is known as end result.  The output is expected value/quantities always have a specified relation to the inputs. EFFECTIVENESS  Algorithms to be developed/written using basic operations.  Algorithms operations should be done exactly and in a finite amount of time by a person, by using paper and pencil only.
  • 8. 8 Performance of an algorithm depends on many factors: • Internal Factors: Specify algorithm’s efficiency in terms of  Time required to run  Space (Memory)required to run • External Factors: affect the algorithm’s performance  Size of the input to the algorithm  Speed of computer on which it is run  Quality of the Computer Efficiency of Algorithm
  • 9. 9 There are two aspects of algorithmic performance or efficiency: • TIME COMPLEXITY: It is essentially efficiency, or how long a program function takes to process a given input.  Instructions take time.  How fast does the algorithm perform?  What affects its runtime? • SPACE COMPLEXITY: of an algorithm is total space taken by the algorithm with respect to the input size. Space complexity includes both Auxiliary space and space used by input.  Data structures take space  What kind of data structures can be used?  How does choice of data structure affect the runtime? Internal Factors
  • 10. 10 Asymptotic Analysis: • In Asymptotic Analysis, we evaluate the performance of an algorithm in terms of input size • Asymptotic analysis of an algorithm refers to defining the mathematical framing of its run-time performance. • Usually, the time required by an algorithm falls under three types −  Best Case − Minimum time required for program execution.  Average Case − Average time required for program execution.  Worst Case − Maximum time required for program execution. Asymptotic Analysis
  • 11. 11 Asymptotic Analysis: • Following are the commonly used asymptotic notations to calculate the running time complexity of an algorithm. Asymptotic Analysis
  • 12. 12 Asymptotic Analysis: • Following graph is commonly used to calculate the running time complexity of an algorithm. Asymptotic Analysis
  • 13. 13 • Big O specifically describes the worst-case scenario, and can be used to describe the execution time required or the space used (e.g. in memory or on disk) by an algorithm. • Big O complexity can be visualized with this graph: Ο Notation ( Big Oh Notation)
  • 14. 14 • Big Ω describes the set of all algorithms that run no better than a certain speed (it’s a lower bound) • It measures the best case time complexity or the best amount of time an algorithm can possibly take to complete. • Best case performance of an algorithm given function g(n), we denote by Ω(g(n)) the set of functions. Ω (g(n)) = {f(n): there exist positive constants c and n0 such that 0 <= c*g(n) <= f(n) for all n >= n0}. • Best case performance of an algorithm is generally not useful, the Omega notation is the least used notation among all three. Omega Notation - Ω
  • 15. 15 θ notation • You can use the big-Theta notation to describe the average-case complexity. • The θ notation describes asymptotic tight bounds • If an algorithm has the average-case time complexity of, say, 3*n^2 - 5n + 13 , then it is true that its average-case time complexity is Theta(n^2) , O(n^2) , and O(n^3) Theta Notation - θ
  • 16. 16 TIME COMPLEXITY OF SORTING ALGORITHMS TIME COMPLEXITY OF SEARCHING ALGORITHMS TIME COMPLEXITY
  • 17. 17 SPACE COMPLEXITY SPACE COMPLEXITY OF SEARCHING AND SORTING ALGORITHMS
  • 18. 18 • We learned about the Algorithm Definition • What is computational Complexity • Estimating Complexity of Algorithm • Asymptotic Notations • Complexity of an Algorithm Thank you Conclusion!