SlideShare ist ein Scribd-Unternehmen logo
1 von 4
Downloaden Sie, um offline zu lesen
Today’s Outline
• Admin: Assignment #1 due next thurs. at
11:59pm
• Asymptotic analysis

Asymptotic Analysis
CSE 373
Data Structures & Algorithms
Ruth Anderson
Spring 2007

04/04/08

2

Linear Search vs Binary Search
Linear Search

Binary Search

Best Case

Asymptotic Analysis

Worst Case

So … which algorithm is better?
What tradeoffs can you make?
04/04/08

Fast Computer vs. Slow Computer

04/04/08

5

4

Fast Computer vs. Smart Programmer
(round 1)

04/04/08

6

1
Fast Computer vs. Smart Programmer
(round 2)

Asymptotic Analysis
• Asymptotic analysis looks at the order of the
running time of the algorithm
– A valuable tool when the input gets “large”
– Ignores the effects of different machines or different
implementations of the same algorithm

• Intuitively, to find the asymptotic runtime, throw
away the constants and low-order terms
– Linear search is T(n) = 3n + 2 ∈ O(n)
– Binary search is T(n) = 4 log2n + 4 ∈ O(log n)

04/04/08

7

Remember: the fastest algorithm has the
slowest growing function for its runtime
8

04/04/08

Order Notation: Intuition

Asymptotic Analysis
• Eliminate low order terms
– 4n + 5 ⇒
– 0.5 n log n + 2n + 7 ⇒
– n3 + 2n + 3n ⇒

f(n) = n3 + 2n2
g(n) = 100n2 + 1000

• Eliminate coefficients
– 4n ⇒
– 0.5 n log n ⇒
– n log n2 =>

04/04/08

9

Although not yet apparent, as n gets “sufficiently
large”, f(n) will be “greater than or equal to” g(n)10
04/04/08

Order Notation: Definition

Definition of Order Notation
•

Upper bound: T(n) = O(f(n))

O( f(n) ) : a set or class of functions

Big-O

Exist constants c and n’ such that
T(n) ≤ c f(n) for all n ≥ n’

•

Lower bound: T(n) = Ω(g(n))

g(n) ∈ O( f(n) ) iff there exist consts c and n0 such that:
g(n) ≤ c f(n) for all n ≥ n0

Omega

Exist constants c and n’ such that
T(n) ≥ c g(n) for all n ≥ n’

•

Tight bound: T(n) = θ(f(n))

Example: g(n) =1000n vs. f(n) = n2
Is g(n) ∈ O( f(n) ) ?
Pick: n0 = 1000, c = 1

Theta

When both hold:
T(n) = O(f(n))
T(n) = Ω(f(n))
04/04/08

11

04/04/08

12

2
Order Notation: Example

Notation Notes
Note: Sometimes, you’ll see the notation:
g(n) = O(f(n)).
This is equivalent to:
g(n) ∈ O(f(n)).
However: The notation
O(f(n)) = g(n)

is meaningless!

(in other words big-O is not symmetric)
04/04/08

13

04/04/08

100n2 + 1000 ≤ 5 (n3 + 2n2) for all n ≥ 19
So f(n) ∈ O( g(n) )

Big-O: Common Names
–
–
–
–
–
–
–
–

constant:
logarithmic:
linear:
log-linear:
quadratic:
cubic:
polynomial:
exponential:

O(1)
O(log n)
O(n)
O(n log n)
O(n2)
O(n3)
O(nk)
O(cn)

14

Meet the Family

(logkn, log n2 ∈ O(log n))

• O( f(n) ) is the set of all functions asymptotically
less than or equal to f(n)
– o( f(n) ) is the set of all functions asymptotically
strictly less than f(n)

• Ω( f(n) ) is the set of all functions asymptotically
greater than or equal to f(n)
– ω( f(n) ) is the set of all functions asymptotically
strictly greater than f(n)

(k is a constant)
(c is a constant > 1)

04/04/08

• θ( f(n) ) is the set of all functions asymptotically
equal to f(n)
15

04/04/08

16

Big-Omega et al. Intuitively

Meet the Family, Formally
• g(n) ∈ O( f(n) ) iff
There exist c and n0 such that g(n) ≤ c f(n) for all n ≥ n0

– g(n) ∈ o( f(n) ) iff
There exists a n0 such that g(n) < c f(n) for all c and n ≥ n0
Equivalent to: limn→∞ g(n)/f(n) = 0

Asymptotic Notation
O
Ω

• g(n) ∈ Ω( f(n) ) iff
There exist c and n0 such that g(n) ≥ c f(n) for all n ≥ n0

θ
o

– g(n) ∈ ω( f(n) ) iff
There exists a n0 such that g(n) > c f(n) for all c and n ≥ n0
Equivalent to: limn→∞ g(n)/f(n) = ∞

ω

Mathematics Relation
≤
≥
=
<
>

• g(n) ∈ θ( f(n) ) iff
g(n) ∈ O( f(n) ) and g(n) ∈ Ω( f(n) )
04/04/08

17

04/04/08

18

3
Pros and Cons of Asymptotic
Analysis

Types of Analysis
Two orthogonal axes:
– bound flavor
• upper bound (O, o)
• lower bound (Ω, ω)
• asymptotically tight (θ)

– analysis case
•
•
•
•
04/04/08

19

worst case (adversary)
average case
best case
“amortized”

04/04/08

Algorithm Analysis Examples

20

Analyzing the Loop

• Consider the following
program segment:

• Total number of times x is incremented is
executed =

x:= 0;
for i = 1 to N do
for j = 1 to i do
x := x + 1;

N

1+ 2 + 3 + ... = ∑ i =

• What is the value of x at
the end?

i =1

N(N + 1)
2

• Congratulations - You’ve just analyzed your first
program!
– Running time of the program is proportional to
N(N+1)/2 for all N
– Big-O ??
04/04/08

21

04/04/08

22

Which Function Grows Faster?

Which Function Grows Faster?

n3 + 2n2 vs.

n3 + 2n2

04/04/08

100n2 + 1000

23

04/04/08

vs. 100n2 + 1000

24

4

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Asymptotic Notations
Asymptotic NotationsAsymptotic Notations
Asymptotic Notations
 
Hash table
Hash tableHash table
Hash table
 
1.1.2 HEXADECIMAL
1.1.2 HEXADECIMAL1.1.2 HEXADECIMAL
1.1.2 HEXADECIMAL
 
State Space Search Strategies in Artificial Intelligence (AI)
State Space Search Strategies in Artificial Intelligence (AI)State Space Search Strategies in Artificial Intelligence (AI)
State Space Search Strategies in Artificial Intelligence (AI)
 
Data Structure Lec #1
Data Structure Lec #1Data Structure Lec #1
Data Structure Lec #1
 
Strongly Connected Components
Strongly Connected Components Strongly Connected Components
Strongly Connected Components
 
Time and space complexity
Time and space complexityTime and space complexity
Time and space complexity
 
Matrix basic operations
Matrix basic operationsMatrix basic operations
Matrix basic operations
 
Kruskal & Prim's Algorithm
Kruskal & Prim's AlgorithmKruskal & Prim's Algorithm
Kruskal & Prim's Algorithm
 
Binary Search Tree
Binary Search TreeBinary Search Tree
Binary Search Tree
 
5.2 divide and conquer
5.2 divide and conquer5.2 divide and conquer
5.2 divide and conquer
 
Topological Sort
Topological SortTopological Sort
Topological Sort
 
Knapsack Problem
Knapsack ProblemKnapsack Problem
Knapsack Problem
 
Algorithms Lecture 6: Searching Algorithms
Algorithms Lecture 6: Searching AlgorithmsAlgorithms Lecture 6: Searching Algorithms
Algorithms Lecture 6: Searching Algorithms
 
Prime number generation
Prime number generationPrime number generation
Prime number generation
 
Syntax directed translation
Syntax directed translationSyntax directed translation
Syntax directed translation
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notations
 
DATA REPRESENTATION
DATA  REPRESENTATIONDATA  REPRESENTATION
DATA REPRESENTATION
 
Kmp
KmpKmp
Kmp
 
Compiler Design Unit 4
Compiler Design Unit 4Compiler Design Unit 4
Compiler Design Unit 4
 

Andere mochten auch

Made easy notes of Digital electronics Part-1
Made easy notes of Digital electronics Part-1Made easy notes of Digital electronics Part-1
Made easy notes of Digital electronics Part-1ranjeet kumar singh
 
Made easy notes of Digital electronics Part-2
Made easy notes of Digital electronics Part-2Made easy notes of Digital electronics Part-2
Made easy notes of Digital electronics Part-2ranjeet kumar singh
 
Digital Electronics Notes
Digital Electronics Notes Digital Electronics Notes
Digital Electronics Notes Srikrishna Thota
 
Computer Networks Foundation - Study Notes
Computer Networks Foundation - Study NotesComputer Networks Foundation - Study Notes
Computer Networks Foundation - Study NotesMarius FAILLOT DEVARRE
 
Digital notes
Digital notesDigital notes
Digital notesstivengo2
 
Advance data structure & algorithm
Advance data structure & algorithmAdvance data structure & algorithm
Advance data structure & algorithmK Hari Shankar
 
Made easy notes of Digital electronics Part-3
Made easy notes of Digital electronics Part-3Made easy notes of Digital electronics Part-3
Made easy notes of Digital electronics Part-3ranjeet kumar singh
 
Gate mathematics questions all branch by s k mondal
Gate mathematics questions all branch by s k mondalGate mathematics questions all branch by s k mondal
Gate mathematics questions all branch by s k mondalAashishv
 
Advanced Computer Architecture Chapter 123 Problems Solution
Advanced Computer Architecture Chapter 123 Problems SolutionAdvanced Computer Architecture Chapter 123 Problems Solution
Advanced Computer Architecture Chapter 123 Problems SolutionJoe Christensen
 
how to calclute time complexity of algortihm
how to calclute time complexity of algortihmhow to calclute time complexity of algortihm
how to calclute time complexity of algortihmSajid Marwat
 
Lecture 3
Lecture 3Lecture 3
Lecture 3Mr SMAK
 
Computer architecture kai hwang
Computer architecture   kai hwangComputer architecture   kai hwang
Computer architecture kai hwangSumedha
 
Algorithm Analysis and Design Class Notes
Algorithm Analysis and Design Class NotesAlgorithm Analysis and Design Class Notes
Algorithm Analysis and Design Class NotesKumar Avinash
 

Andere mochten auch (17)

Made easy notes of Digital electronics Part-1
Made easy notes of Digital electronics Part-1Made easy notes of Digital electronics Part-1
Made easy notes of Digital electronics Part-1
 
Made easy notes of Digital electronics Part-2
Made easy notes of Digital electronics Part-2Made easy notes of Digital electronics Part-2
Made easy notes of Digital electronics Part-2
 
Digital Electronics Notes
Digital Electronics Notes Digital Electronics Notes
Digital Electronics Notes
 
Computer Networks Foundation - Study Notes
Computer Networks Foundation - Study NotesComputer Networks Foundation - Study Notes
Computer Networks Foundation - Study Notes
 
Gate mathematics
Gate mathematicsGate mathematics
Gate mathematics
 
Digital notes
Digital notesDigital notes
Digital notes
 
Advance data structure & algorithm
Advance data structure & algorithmAdvance data structure & algorithm
Advance data structure & algorithm
 
Made easy notes of Digital electronics Part-3
Made easy notes of Digital electronics Part-3Made easy notes of Digital electronics Part-3
Made easy notes of Digital electronics Part-3
 
Kai hwang solution
Kai hwang solutionKai hwang solution
Kai hwang solution
 
Gate mathematics questions all branch by s k mondal
Gate mathematics questions all branch by s k mondalGate mathematics questions all branch by s k mondal
Gate mathematics questions all branch by s k mondal
 
Advanced Computer Architecture Chapter 123 Problems Solution
Advanced Computer Architecture Chapter 123 Problems SolutionAdvanced Computer Architecture Chapter 123 Problems Solution
Advanced Computer Architecture Chapter 123 Problems Solution
 
Complexity of Algorithm
Complexity of AlgorithmComplexity of Algorithm
Complexity of Algorithm
 
how to calclute time complexity of algortihm
how to calclute time complexity of algortihmhow to calclute time complexity of algortihm
how to calclute time complexity of algortihm
 
Lecture 3
Lecture 3Lecture 3
Lecture 3
 
Computer architecture kai hwang
Computer architecture   kai hwangComputer architecture   kai hwang
Computer architecture kai hwang
 
Algorithm Analysis and Design Class Notes
Algorithm Analysis and Design Class NotesAlgorithm Analysis and Design Class Notes
Algorithm Analysis and Design Class Notes
 
Design & Analysis Of Algorithm
Design & Analysis Of AlgorithmDesign & Analysis Of Algorithm
Design & Analysis Of Algorithm
 

Ähnlich wie Time complexity (linear search vs binary search)

1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptxpallavidhade2
 
2_Asymptotic notations.pptx
2_Asymptotic notations.pptx2_Asymptotic notations.pptx
2_Asymptotic notations.pptxdattakumar4
 
Design and analysis of algorithm ppt ppt
Design and analysis of algorithm ppt pptDesign and analysis of algorithm ppt ppt
Design and analysis of algorithm ppt pptsrushtiivp
 
lecture 1
lecture 1lecture 1
lecture 1sajinsc
 
Asymptotic Notation and Complexity
Asymptotic Notation and ComplexityAsymptotic Notation and Complexity
Asymptotic Notation and ComplexityRajandeep Gill
 
Data Structures and Algorithms - Lec 02.pdf
Data Structures and Algorithms - Lec 02.pdfData Structures and Algorithms - Lec 02.pdf
Data Structures and Algorithms - Lec 02.pdfRameshaFernando2
 
CMSC 56 | Lecture 8: Growth of Functions
CMSC 56 | Lecture 8: Growth of FunctionsCMSC 56 | Lecture 8: Growth of Functions
CMSC 56 | Lecture 8: Growth of Functionsallyn joy calcaben
 
Lecture 3(a) Asymptotic-analysis.pdf
Lecture 3(a) Asymptotic-analysis.pdfLecture 3(a) Asymptotic-analysis.pdf
Lecture 3(a) Asymptotic-analysis.pdfShaistaRiaz4
 
Master method theorem
Master method theoremMaster method theorem
Master method theoremRajendran
 
Master method theorem
Master method theoremMaster method theorem
Master method theoremRajendran
 
Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1Deepak John
 
04. Growth_Rate_AND_Asymptotic Notations_.pptx
04. Growth_Rate_AND_Asymptotic Notations_.pptx04. Growth_Rate_AND_Asymptotic Notations_.pptx
04. Growth_Rate_AND_Asymptotic Notations_.pptxarslanzaheer14
 
Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...
Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...
Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...Sean Meyn
 

Ähnlich wie Time complexity (linear search vs binary search) (20)

Asymptotic Notation
Asymptotic NotationAsymptotic Notation
Asymptotic Notation
 
Asymptotic notation
Asymptotic notationAsymptotic notation
Asymptotic notation
 
1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx
 
2_Asymptotic notations.pptx
2_Asymptotic notations.pptx2_Asymptotic notations.pptx
2_Asymptotic notations.pptx
 
Design and analysis of algorithm ppt ppt
Design and analysis of algorithm ppt pptDesign and analysis of algorithm ppt ppt
Design and analysis of algorithm ppt ppt
 
lecture 1
lecture 1lecture 1
lecture 1
 
Algorithm.ppt
Algorithm.pptAlgorithm.ppt
Algorithm.ppt
 
Asymptotic Notation and Complexity
Asymptotic Notation and ComplexityAsymptotic Notation and Complexity
Asymptotic Notation and Complexity
 
Data Structures and Algorithms - Lec 02.pdf
Data Structures and Algorithms - Lec 02.pdfData Structures and Algorithms - Lec 02.pdf
Data Structures and Algorithms - Lec 02.pdf
 
CMSC 56 | Lecture 8: Growth of Functions
CMSC 56 | Lecture 8: Growth of FunctionsCMSC 56 | Lecture 8: Growth of Functions
CMSC 56 | Lecture 8: Growth of Functions
 
Lecture 3(a) Asymptotic-analysis.pdf
Lecture 3(a) Asymptotic-analysis.pdfLecture 3(a) Asymptotic-analysis.pdf
Lecture 3(a) Asymptotic-analysis.pdf
 
Master method theorem
Master method theoremMaster method theorem
Master method theorem
 
Master method theorem
Master method theoremMaster method theorem
Master method theorem
 
Asymptotic Notation
Asymptotic NotationAsymptotic Notation
Asymptotic Notation
 
Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1
 
Lecture3(b).pdf
Lecture3(b).pdfLecture3(b).pdf
Lecture3(b).pdf
 
04. Growth_Rate_AND_Asymptotic Notations_.pptx
04. Growth_Rate_AND_Asymptotic Notations_.pptx04. Growth_Rate_AND_Asymptotic Notations_.pptx
04. Growth_Rate_AND_Asymptotic Notations_.pptx
 
AsymptoticAnalysis.ppt
AsymptoticAnalysis.pptAsymptoticAnalysis.ppt
AsymptoticAnalysis.ppt
 
Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...
Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...
Quasi-Stochastic Approximation: Algorithm Design Principles with Applications...
 
analysis.ppt
analysis.pptanalysis.ppt
analysis.ppt
 

Mehr von Kumar

Graphics devices
Graphics devicesGraphics devices
Graphics devicesKumar
 
Fill area algorithms
Fill area algorithmsFill area algorithms
Fill area algorithmsKumar
 
region-filling
region-fillingregion-filling
region-fillingKumar
 
Bresenham derivation
Bresenham derivationBresenham derivation
Bresenham derivationKumar
 
Bresenham circles and polygons derication
Bresenham circles and polygons dericationBresenham circles and polygons derication
Bresenham circles and polygons dericationKumar
 
Introductionto xslt
Introductionto xsltIntroductionto xslt
Introductionto xsltKumar
 
Extracting data from xml
Extracting data from xmlExtracting data from xml
Extracting data from xmlKumar
 
Xml basics
Xml basicsXml basics
Xml basicsKumar
 
XML Schema
XML SchemaXML Schema
XML SchemaKumar
 
Publishing xml
Publishing xmlPublishing xml
Publishing xmlKumar
 
Applying xml
Applying xmlApplying xml
Applying xmlKumar
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XMLKumar
 
How to deploy a j2ee application
How to deploy a j2ee applicationHow to deploy a j2ee application
How to deploy a j2ee applicationKumar
 
JNDI, JMS, JPA, XML
JNDI, JMS, JPA, XMLJNDI, JMS, JPA, XML
JNDI, JMS, JPA, XMLKumar
 
EJB Fundmentals
EJB FundmentalsEJB Fundmentals
EJB FundmentalsKumar
 
JSP and struts programming
JSP and struts programmingJSP and struts programming
JSP and struts programmingKumar
 
java servlet and servlet programming
java servlet and servlet programmingjava servlet and servlet programming
java servlet and servlet programmingKumar
 
Introduction to JDBC and JDBC Drivers
Introduction to JDBC and JDBC DriversIntroduction to JDBC and JDBC Drivers
Introduction to JDBC and JDBC DriversKumar
 
Introduction to J2EE
Introduction to J2EEIntroduction to J2EE
Introduction to J2EEKumar
 

Mehr von Kumar (20)

Graphics devices
Graphics devicesGraphics devices
Graphics devices
 
Fill area algorithms
Fill area algorithmsFill area algorithms
Fill area algorithms
 
region-filling
region-fillingregion-filling
region-filling
 
Bresenham derivation
Bresenham derivationBresenham derivation
Bresenham derivation
 
Bresenham circles and polygons derication
Bresenham circles and polygons dericationBresenham circles and polygons derication
Bresenham circles and polygons derication
 
Introductionto xslt
Introductionto xsltIntroductionto xslt
Introductionto xslt
 
Extracting data from xml
Extracting data from xmlExtracting data from xml
Extracting data from xml
 
Xml basics
Xml basicsXml basics
Xml basics
 
XML Schema
XML SchemaXML Schema
XML Schema
 
Publishing xml
Publishing xmlPublishing xml
Publishing xml
 
DTD
DTDDTD
DTD
 
Applying xml
Applying xmlApplying xml
Applying xml
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
 
How to deploy a j2ee application
How to deploy a j2ee applicationHow to deploy a j2ee application
How to deploy a j2ee application
 
JNDI, JMS, JPA, XML
JNDI, JMS, JPA, XMLJNDI, JMS, JPA, XML
JNDI, JMS, JPA, XML
 
EJB Fundmentals
EJB FundmentalsEJB Fundmentals
EJB Fundmentals
 
JSP and struts programming
JSP and struts programmingJSP and struts programming
JSP and struts programming
 
java servlet and servlet programming
java servlet and servlet programmingjava servlet and servlet programming
java servlet and servlet programming
 
Introduction to JDBC and JDBC Drivers
Introduction to JDBC and JDBC DriversIntroduction to JDBC and JDBC Drivers
Introduction to JDBC and JDBC Drivers
 
Introduction to J2EE
Introduction to J2EEIntroduction to J2EE
Introduction to J2EE
 

Kürzlich hochgeladen

Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...RKavithamani
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 

Kürzlich hochgeladen (20)

Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 

Time complexity (linear search vs binary search)

  • 1. Today’s Outline • Admin: Assignment #1 due next thurs. at 11:59pm • Asymptotic analysis Asymptotic Analysis CSE 373 Data Structures & Algorithms Ruth Anderson Spring 2007 04/04/08 2 Linear Search vs Binary Search Linear Search Binary Search Best Case Asymptotic Analysis Worst Case So … which algorithm is better? What tradeoffs can you make? 04/04/08 Fast Computer vs. Slow Computer 04/04/08 5 4 Fast Computer vs. Smart Programmer (round 1) 04/04/08 6 1
  • 2. Fast Computer vs. Smart Programmer (round 2) Asymptotic Analysis • Asymptotic analysis looks at the order of the running time of the algorithm – A valuable tool when the input gets “large” – Ignores the effects of different machines or different implementations of the same algorithm • Intuitively, to find the asymptotic runtime, throw away the constants and low-order terms – Linear search is T(n) = 3n + 2 ∈ O(n) – Binary search is T(n) = 4 log2n + 4 ∈ O(log n) 04/04/08 7 Remember: the fastest algorithm has the slowest growing function for its runtime 8 04/04/08 Order Notation: Intuition Asymptotic Analysis • Eliminate low order terms – 4n + 5 ⇒ – 0.5 n log n + 2n + 7 ⇒ – n3 + 2n + 3n ⇒ f(n) = n3 + 2n2 g(n) = 100n2 + 1000 • Eliminate coefficients – 4n ⇒ – 0.5 n log n ⇒ – n log n2 => 04/04/08 9 Although not yet apparent, as n gets “sufficiently large”, f(n) will be “greater than or equal to” g(n)10 04/04/08 Order Notation: Definition Definition of Order Notation • Upper bound: T(n) = O(f(n)) O( f(n) ) : a set or class of functions Big-O Exist constants c and n’ such that T(n) ≤ c f(n) for all n ≥ n’ • Lower bound: T(n) = Ω(g(n)) g(n) ∈ O( f(n) ) iff there exist consts c and n0 such that: g(n) ≤ c f(n) for all n ≥ n0 Omega Exist constants c and n’ such that T(n) ≥ c g(n) for all n ≥ n’ • Tight bound: T(n) = θ(f(n)) Example: g(n) =1000n vs. f(n) = n2 Is g(n) ∈ O( f(n) ) ? Pick: n0 = 1000, c = 1 Theta When both hold: T(n) = O(f(n)) T(n) = Ω(f(n)) 04/04/08 11 04/04/08 12 2
  • 3. Order Notation: Example Notation Notes Note: Sometimes, you’ll see the notation: g(n) = O(f(n)). This is equivalent to: g(n) ∈ O(f(n)). However: The notation O(f(n)) = g(n) is meaningless! (in other words big-O is not symmetric) 04/04/08 13 04/04/08 100n2 + 1000 ≤ 5 (n3 + 2n2) for all n ≥ 19 So f(n) ∈ O( g(n) ) Big-O: Common Names – – – – – – – – constant: logarithmic: linear: log-linear: quadratic: cubic: polynomial: exponential: O(1) O(log n) O(n) O(n log n) O(n2) O(n3) O(nk) O(cn) 14 Meet the Family (logkn, log n2 ∈ O(log n)) • O( f(n) ) is the set of all functions asymptotically less than or equal to f(n) – o( f(n) ) is the set of all functions asymptotically strictly less than f(n) • Ω( f(n) ) is the set of all functions asymptotically greater than or equal to f(n) – ω( f(n) ) is the set of all functions asymptotically strictly greater than f(n) (k is a constant) (c is a constant > 1) 04/04/08 • θ( f(n) ) is the set of all functions asymptotically equal to f(n) 15 04/04/08 16 Big-Omega et al. Intuitively Meet the Family, Formally • g(n) ∈ O( f(n) ) iff There exist c and n0 such that g(n) ≤ c f(n) for all n ≥ n0 – g(n) ∈ o( f(n) ) iff There exists a n0 such that g(n) < c f(n) for all c and n ≥ n0 Equivalent to: limn→∞ g(n)/f(n) = 0 Asymptotic Notation O Ω • g(n) ∈ Ω( f(n) ) iff There exist c and n0 such that g(n) ≥ c f(n) for all n ≥ n0 θ o – g(n) ∈ ω( f(n) ) iff There exists a n0 such that g(n) > c f(n) for all c and n ≥ n0 Equivalent to: limn→∞ g(n)/f(n) = ∞ ω Mathematics Relation ≤ ≥ = < > • g(n) ∈ θ( f(n) ) iff g(n) ∈ O( f(n) ) and g(n) ∈ Ω( f(n) ) 04/04/08 17 04/04/08 18 3
  • 4. Pros and Cons of Asymptotic Analysis Types of Analysis Two orthogonal axes: – bound flavor • upper bound (O, o) • lower bound (Ω, ω) • asymptotically tight (θ) – analysis case • • • • 04/04/08 19 worst case (adversary) average case best case “amortized” 04/04/08 Algorithm Analysis Examples 20 Analyzing the Loop • Consider the following program segment: • Total number of times x is incremented is executed = x:= 0; for i = 1 to N do for j = 1 to i do x := x + 1; N 1+ 2 + 3 + ... = ∑ i = • What is the value of x at the end? i =1 N(N + 1) 2 • Congratulations - You’ve just analyzed your first program! – Running time of the program is proportional to N(N+1)/2 for all N – Big-O ?? 04/04/08 21 04/04/08 22 Which Function Grows Faster? Which Function Grows Faster? n3 + 2n2 vs. n3 + 2n2 04/04/08 100n2 + 1000 23 04/04/08 vs. 100n2 + 1000 24 4