SlideShare ist ein Scribd-Unternehmen logo
1 von 49
“Monte Carlo method” 
generate M random permutations of {1,…,20} 
let H be the number of those in which 
exactly one person gets his/her card back 
output H/M
Lower bounds 
number from {1,2,3,…,9} 
3 yes/no questions 
Can you always figure out the number?
Lower bounds 
number from {1,2,3,…,8} 
3 yes/no questions 
Can you always figure out the number?
Lower bounds 
number from {1,2,3,…,8} 
3 yes/no questions 
in {1,2,3,4} ? 
Y N 
in {1,2} ? in {5,6} ? 
Y 
Y N 
N 
=1 ? =3 ? =5 ? =7 ? 
Y Y Y Y 
N N 
N N 
1 2 3 4 5 6 7 8
Lower bounds 
number from {1,2,3,…,n} 
k yes/no questions
Lower bounds 
number from {1,2,3,…,n} 
k yes/no questions 
k = é log2 n ù
Lower bounds 
number from {1,2,3,…,n} 
k yes/no questions 
k = é log2 n ù 
INFORMATION THEORETIC LOWER BOUND: 
k³ log2 n
Lower bounds 
n animals = {dog,cat,fish,eagle,snake, …} 
yes/no questions 
INFORMATION THEORETIC LOWER BOUND: 
k³ log2 n
Lower bounds for sorting 
sorting by comparisons 
yes/no questions: is A[i]>A[j] ? 
data are not used to “control” 
computation in any other way 
A[1..n] 
1 2 3 
1 3 2 
2 1 3 
• 3 1 
3 1 2 
3 2 1
Lower bounds for sorting 
sorting by comparisons 
yes/no questions: is A[i]>A[j] ? 
A[1..n] 
log a*b = log a + log b 
k ³ log2 n! ³ 
log2 n + log2 (n-1) + … log2 1 ³ 
(n/2) log2 (n/2) = Q(n log n)
Lower bounds for sorting 
Theorem: 
Any comparison based sorting algorithm 
requires W(n ln n) comparisons in the 
worst-case.
Lower bounds for search in sorted array 
INPUT: array A[1..n], element x 
OUTPUT: a position of x in A if x is in A 
^ otherwise
Lower bounds for search in sorted array 
INPUT: array A[1..n], element x 
OUTPUT: a position of x in A if x is in A 
^ otherwise 
Theorem: 
Any comparison based algorithm for 
searching an element in a sorted array 
requires W(ln n) comparisons in the 
worst-case.
Lower bounds for minimum 
INPUT: array A[1..n] 
OUTPUT: the smallest element of A
Lower bounds for minimum 
INPUT: array A[1..n] 
OUTPUT: the smallest element of A 
INFORMATION THEORETIC LOWER BOUND: 
at least W(ln n) comparisons 
ADVERSARY LOWER BOUND: 
at least W(n) comparisons
Counting sort 
array A[1..n] containing numbers from {1,…,k} 
1st pass: 
count how many times iÎ {1,…,k} occurs 
2nd pass: 
put the elements in B
Counting sort 
array A[1..n] containing numbers from {1,…,k} 
for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=0 
for I ¬ 1 to k+1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
D[A[j]]++ 
B[ D[A[j]] ] ¬ A[j]
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 
C 4 7 3 2 
D 1 5 12 15
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 
C 4 7 3 2 
D 2 5 12 15 
1
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 
C 4 7 3 2 
D 2 6 12 15 
1 2
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 
C 4 7 3 2 
D 2 6 13 15 
1 2 3
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 
C 4 7 3 2 
D 2 7 13 15 
1 2 2 3
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 
C 4 7 3 2 
D 5 12 15 17 
1 1 1 1 2 2 2 2 2 2 2 3 3 3 4 4
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
stable sort = after sorting the items with the 
same key don’t switch order 
running time = O(n+k)
Counting sort for i ¬ 1 to k do C[i] ¬ 0 
for j ¬ 1 to n do C[A[j]]++ 
D[1]=1 
for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] 
for j ¬ 1 to n do 
B[ D[A[j]] ] ¬ A[j] 
D[A[j]]++ 
stable sort = after sorting the items with the 
same key don’t switch order 
running time = O(n+k) 
What if e.g., k = n2 ?
Radix sort 
array A[1..n] containing numbers from {0,…,k2 - 1} 
1) sort using counting sort with 
key = x mod k 
2) sort using counting sort with 
key = ë x/k û 
Running time = ?
Radix sort 
array A[1..n] containing numbers from {0,…,k2 - 1} 
1) sort using counting sort with 
key = x mod k 
2) sort using counting sort with 
key = ë x/k û 
Running time = O(n + k)
Radix sort 
array A[1..n] containing numbers from {0,…,k2 - 1} 
example k=10 
28 
70 
21 
20 
42 
21 
43 
42 
23 
32 
32 
43 
70 
23 
18 
28 
29 
18 
20 
29
Radix sort 
array A[1..n] containing numbers from {0,…,k2 - 1} 
example k=10 
28 
70 
21 
20 
42 
21 
43 
42 
23 
32 
32 
43 
70 
23 
18 
28 
29 
18 
20 
29
Radix sort 
array A[1..n] containing numbers from {0,…,k2 - 1} 
example k=10 
28 
70 
21 
20 
42 
21 
43 
42 
23 
32 
32 
43 
70 
23 
18 
28 
29 
18 
20 
29 
18 
20 
21 
23 
28 
29 
32 
42 
43 
70
Radix sort 
array A[1..n] containing numbers from {0,…,kd - 1} 
1) sort using counting sort with 
key = x mod k 
2) sort using counting sort with 
key = ë x/k û mod k 
3) sort using counting sort with 
key = ë x/k2 û mod k 
… 
d) sort using counting sort with 
key = ë x/kd-1 û mod k
Radix sort 
array A[1..n] containing numbers from {0,…,kd - 1} 
Correctness: after s-th step the numbers 
are sorted according to x mod ks 
Proof: By induction. Base case s=1 is trivial. 
1) sort using counting sort with 
key = x mod k
Radix sort 
array A[1..n] containing numbers from {0,…,kd - 1} 
Correctness: after s-th step the numbers 
are sorted according to x mod ks 
Proof: Now assume IH and execute s+1st step. Let x,y 
be such that x mod ks+1 < y mod ks+1. Then either 
ë x/ks û mod k < ë y/ks û mod k or 
ë x/ks û mod k = ë y/ks û mod k and x mod ks < y mod ks
Bucket sort 
linear time sorting algorithm on average 
Assume some distribution on input. 
INPUT: n independently random numbers from the 
uniform distribution on the interval [0,1].
Bucket sort 
INPUT: n independently random numbers from the 
uniform distribution on the interval [0,1]. 
for i ¬ 1 to n do 
insert A[i] into list B[ ëA[i]*nû ] 
for i ¬ 0 to n-1 do 
sort list B[i] 
output lists B[0],…,B[n-1]
Bucket sort 
INPUT: n independently random numbers from the 
uniform distribution on the interval [0,1]. 
0.13, 0.23, 0.56, 0.74, 0.18, 0.34, 0.12, 0.82, 0.14, 0.19 
for i ¬ 1 to n do 
insert A[i] into list B[ ëA[i]*nû ] 
for i ¬ 0 to n-1 do 
sort list B[i] 
output lists B[0],…,B[n-1]
Bucket sort 
INPUT: n independently random numbers from the 
uniform distribution on the interval [0,1]. 
0.13, 0.23, 0.56, 0.74, 0.18, 0.34, 0.12, 0.52, 0.14, 0.19 
1 2 5 7 1 3 1 5 1 1 
B[1]: 0.13, 0.18, 0.12, 0.14, 0.19 
B[2]: 0.23 
B[3]: 0.34 
B[5]: 0.56, 0.52 
B[7]: 0.74 
for i ¬ 1 to n do 
insert A[i] into list B[ ëA[i]*nû ] 
for i ¬ 0 to n-1 do 
sort list B[i] 
output lists B[0],…,B[n-1]
Bucket sort 
INPUT: n independently random numbers from the 
uniform distribution on the interval [0,1]. 
0.13, 0.23, 0.56, 0.74, 0.18, 0.34, 0.12, 0.52, 0.14, 0.19 
1 2 5 7 1 3 1 5 1 1 
B[1]: 0.12, 0.13, 0.14, 0.18, 0.19 
B[2]: 0.23 
B[3]: 0.34 
B[5]: 0.52, 0.56 
B[7]: 0.74 
for i ¬ 1 to n do 
insert A[i] into list B[ ëA[i]*nû ] 
for i ¬ 0 to n-1 do 
sort list B[i] 
output lists B[0],…,B[n-1]
Bucket sort for i ¬ 1 to n do 
insert A[i] into list B[ ëA[i]*nû ] 
for i ¬ 0 to n-1 do 
sort list B[i] 
output lists B[0],…,B[n-1] 
assume we use insert-sort 
worst-case running time?
Bucket sort for i ¬ 1 to n do 
insert A[i] into list B[ ëA[i]*nû ] 
for i ¬ 0 to n-1 do 
sort list B[i] 
output lists B[0],…,B[n-1] 
assume we use insert-sort 
average-case running time? 
X0, X1, … , Xn-1 where Xi is the number of 
items that fall inside the i-th bucket
Bucket sort 
X0, X1, … , Xn-1 where Xi is the number of 
items that fall inside the i-th bucket 
X0 
2 + X1 
2 + … + Xn-1 
2 
What is E[X0 
2 + X1 
2 + … + Xn-1 
2] ? 
E[X0 
2 + … + Xn-1 
2 ] = 
E[X0 
2] + … + E[Xn-1 
2 ] = 
n E[X0 
2] 
linearity of expectation 
symmetry of the problem
Bucket sort 
E[X0 
2] What is E[X0] ? 
value of X0 
0 (1-p)n 
1 n (1-p) n-1 
k binomial(n,k) pk (1-p)n-k 
n pn 
p=1/n
Bucket sort 
E[X0 
2] E[X0] = 1 
0 (1-p)n 
1 n (1-p) n-1 
k binomial(n,k) pk (1-p)n-k 
n pn 
p=1/n 
n 
E[X0] = å k * binomial(n,k) pk (1-p)n-k 
k=0
Bucket sort 
E[X0 
2] E[X0] = 1 
p=1/n 
n 
E[X0] = å k * binomial(n,k) pk (1-p)n-k 
k=1 
binomial (n,k) = (n/k) * binomial (n-1,k-1) 
n 
   å binomial(n,k) pk (1-p)n-k = 1 
k=0
Bucket sort 
E[X0 
2] E[X0] = 1 
p=1/n 
n 
E[X0] = å n* binomial(n-1,k-1) pk (1-p)n-k 
k=1 
n 
n 
= n*p å binomial(n-1,k-1) pk-1(1-p)n-k 
= n*p 
k=1 
   å binomial(n,k) pk (1-p)n-k = 1 
k=0
Bucket sort 
E[X0 
2] 
0 (1-p)n 
1 n (1-p) n-1 
k binomial(n,k) pk (1-p)n-k 
n pn 
p=1/n 
2]= å k2 * binomial(n,k) pk (1-p)n-k 
k=0 
E[X0 
n
Bucket sort 
E[X0 
2] 
p=1/n 
E[X0 
n 
2]= å k2 * binomial(n,k) pk (1-p)n-k 
k=0 
n 
= å k * binomial(n,k) pk (1-p)n-k 
k=0 
+ 
n 
å k(k-1) * binomial(n,k) pk (1-p)n-k 
k=0
Bucket sort 
E[X0 
2] 
p=1/n 
E[X0 
n 
2]= å k2 * binomial(n,k) pk (1-p)n-k 
k=0 
n 
= å k * binomial(n,k) pk (1-p)n-k 
k=0 
+ 
n 
n*p 
å k(k-1) * binomial(n,k) pk (1-p)n-k 
k=0
Bucket sort 
E[X0 
2] 
p=1/n 
n 
2]= å k(k-1) * binomial(n,k) pk (1-p)n-k 
E[X0 
+n*p 
k=2 
binomial (n,k) = (n/k) * binomial (n-1,k-1) = 
(n/k) * ((n-1)/(k-1)) * binomial (n-2,k-2) 
E[X0 
2] = n* (n-1) * p2 + n*p

Weitere ähnliche Inhalte

Was ist angesagt?

47 operations of 2nd degree expressions and formulas
47 operations of 2nd degree expressions and formulas47 operations of 2nd degree expressions and formulas
47 operations of 2nd degree expressions and formulasalg1testreview
 
Chapter 5 indices & logarithms
Chapter 5  indices & logarithmsChapter 5  indices & logarithms
Chapter 5 indices & logarithmsatiqah ayie
 
1.5 notation and algebra of functions
1.5 notation and algebra of functions1.5 notation and algebra of functions
1.5 notation and algebra of functionsmath123c
 
Transforming Quadratic Functions from General Form to Standard Form
Transforming Quadratic Functions from General Form to Standard FormTransforming Quadratic Functions from General Form to Standard Form
Transforming Quadratic Functions from General Form to Standard FormIvy Estrella
 
5 algebra of functions
5 algebra of functions5 algebra of functions
5 algebra of functionsTzenma
 
02[anal add math cd]
02[anal add math cd]02[anal add math cd]
02[anal add math cd]ilya shafiqah
 
1.0 factoring trinomials the ac method and making lists-x
1.0 factoring trinomials  the ac method and making lists-x1.0 factoring trinomials  the ac method and making lists-x
1.0 factoring trinomials the ac method and making lists-xmath260
 
Ejercicios prueba de algebra de la UTN- widmar aguilar
Ejercicios prueba de algebra de la UTN-  widmar aguilarEjercicios prueba de algebra de la UTN-  widmar aguilar
Ejercicios prueba de algebra de la UTN- widmar aguilarWidmar Aguilar Gonzalez
 
2 complex numbers part 2 of 3
2 complex numbers part 2 of 32 complex numbers part 2 of 3
2 complex numbers part 2 of 3naveenkumar9211
 
cbse class 12 math question paper
cbse class 12 math question papercbse class 12 math question paper
cbse class 12 math question paperPady Srini
 
11 graphs of first degree functions x
11 graphs of first degree functions x11 graphs of first degree functions x
11 graphs of first degree functions xmath260
 
Assessments for class xi
Assessments  for class  xi Assessments  for class  xi
Assessments for class xi indu psthakur
 
Additional Mathematics form 4 (formula)
Additional Mathematics form 4 (formula)Additional Mathematics form 4 (formula)
Additional Mathematics form 4 (formula)Fatini Adnan
 
1.2 algebraic expressions t
1.2 algebraic expressions t1.2 algebraic expressions t
1.2 algebraic expressions tmath260
 

Was ist angesagt? (20)

47 operations of 2nd degree expressions and formulas
47 operations of 2nd degree expressions and formulas47 operations of 2nd degree expressions and formulas
47 operations of 2nd degree expressions and formulas
 
Chapter 5 indices & logarithms
Chapter 5  indices & logarithmsChapter 5  indices & logarithms
Chapter 5 indices & logarithms
 
Complex numbers
Complex numbersComplex numbers
Complex numbers
 
1.5 notation and algebra of functions
1.5 notation and algebra of functions1.5 notation and algebra of functions
1.5 notation and algebra of functions
 
Transforming Quadratic Functions from General Form to Standard Form
Transforming Quadratic Functions from General Form to Standard FormTransforming Quadratic Functions from General Form to Standard Form
Transforming Quadratic Functions from General Form to Standard Form
 
Set 1 mawar
Set 1 mawarSet 1 mawar
Set 1 mawar
 
5 algebra of functions
5 algebra of functions5 algebra of functions
5 algebra of functions
 
Tugas akhir matematika kelompok 1
Tugas akhir matematika kelompok 1Tugas akhir matematika kelompok 1
Tugas akhir matematika kelompok 1
 
02[anal add math cd]
02[anal add math cd]02[anal add math cd]
02[anal add math cd]
 
1.0 factoring trinomials the ac method and making lists-x
1.0 factoring trinomials  the ac method and making lists-x1.0 factoring trinomials  the ac method and making lists-x
1.0 factoring trinomials the ac method and making lists-x
 
Ejercicios prueba de algebra de la UTN- widmar aguilar
Ejercicios prueba de algebra de la UTN-  widmar aguilarEjercicios prueba de algebra de la UTN-  widmar aguilar
Ejercicios prueba de algebra de la UTN- widmar aguilar
 
2 complex numbers part 2 of 3
2 complex numbers part 2 of 32 complex numbers part 2 of 3
2 complex numbers part 2 of 3
 
Functions & graphs
Functions & graphsFunctions & graphs
Functions & graphs
 
cbse class 12 math question paper
cbse class 12 math question papercbse class 12 math question paper
cbse class 12 math question paper
 
Matematica
MatematicaMatematica
Matematica
 
Algebra formulas
Algebra formulas Algebra formulas
Algebra formulas
 
11 graphs of first degree functions x
11 graphs of first degree functions x11 graphs of first degree functions x
11 graphs of first degree functions x
 
Assessments for class xi
Assessments  for class  xi Assessments  for class  xi
Assessments for class xi
 
Additional Mathematics form 4 (formula)
Additional Mathematics form 4 (formula)Additional Mathematics form 4 (formula)
Additional Mathematics form 4 (formula)
 
1.2 algebraic expressions t
1.2 algebraic expressions t1.2 algebraic expressions t
1.2 algebraic expressions t
 

Andere mochten auch

SAP TOP TEN ENTERPRISE MOBILITY 2013
SAP TOP TEN ENTERPRISE MOBILITY 2013SAP TOP TEN ENTERPRISE MOBILITY 2013
SAP TOP TEN ENTERPRISE MOBILITY 2013Riccardo Bellesia
 
Theories of the universe 2
Theories of the universe 2Theories of the universe 2
Theories of the universe 2geislau15
 
Trading spaces
Trading spacesTrading spaces
Trading spacesiamslempy
 
FUNNY "WANTED" POSTERS
FUNNY "WANTED" POSTERSFUNNY "WANTED" POSTERS
FUNNY "WANTED" POSTERSviv_h
 
Răspunsul Aeroportului Internațional Cluj vizavi de parcare
Răspunsul Aeroportului Internațional Cluj vizavi de parcareRăspunsul Aeroportului Internațional Cluj vizavi de parcare
Răspunsul Aeroportului Internațional Cluj vizavi de parcareRobin Molnar
 

Andere mochten auch (6)

SAP TOP TEN ENTERPRISE MOBILITY 2013
SAP TOP TEN ENTERPRISE MOBILITY 2013SAP TOP TEN ENTERPRISE MOBILITY 2013
SAP TOP TEN ENTERPRISE MOBILITY 2013
 
Theories of the universe 2
Theories of the universe 2Theories of the universe 2
Theories of the universe 2
 
Trading spaces
Trading spacesTrading spaces
Trading spaces
 
FUNNY "WANTED" POSTERS
FUNNY "WANTED" POSTERSFUNNY "WANTED" POSTERS
FUNNY "WANTED" POSTERS
 
R and Access 2007
R and Access 2007R and Access 2007
R and Access 2007
 
Răspunsul Aeroportului Internațional Cluj vizavi de parcare
Răspunsul Aeroportului Internațional Cluj vizavi de parcareRăspunsul Aeroportului Internațional Cluj vizavi de parcare
Răspunsul Aeroportului Internațional Cluj vizavi de parcare
 

Ähnlich wie Top school in delhi ncr

Counting sort(Non Comparison Sort)
Counting sort(Non Comparison Sort)Counting sort(Non Comparison Sort)
Counting sort(Non Comparison Sort)Hossain Md Shakhawat
 
module2_dIVIDEncONQUER_2022.pdf
module2_dIVIDEncONQUER_2022.pdfmodule2_dIVIDEncONQUER_2022.pdf
module2_dIVIDEncONQUER_2022.pdfShiwani Gupta
 
Ch01 basic concepts_nosoluiton
Ch01 basic concepts_nosoluitonCh01 basic concepts_nosoluiton
Ch01 basic concepts_nosoluitonshin
 
Insertion sort bubble sort selection sort
Insertion sort bubble sort  selection sortInsertion sort bubble sort  selection sort
Insertion sort bubble sort selection sortUmmar Hayat
 
tutorial5.ppt
tutorial5.ppttutorial5.ppt
tutorial5.pptjvjfvvoa
 
Dynamic Programming for 4th sem cse students
Dynamic Programming for 4th sem cse studentsDynamic Programming for 4th sem cse students
Dynamic Programming for 4th sem cse studentsDeepakGowda357858
 
Algorithm Design and Analysis
Algorithm Design and AnalysisAlgorithm Design and Analysis
Algorithm Design and AnalysisReetesh Gupta
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03Krish_ver2
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03Krish_ver2
 
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
 
search_sort Search sortSearch sortSearch sortSearch sort
search_sort Search sortSearch sortSearch sortSearch sortsearch_sort Search sortSearch sortSearch sortSearch sort
search_sort Search sortSearch sortSearch sortSearch sortShanmuganathan C
 
All homework and exams in one file.pdf
All homework and exams in one file.pdfAll homework and exams in one file.pdf
All homework and exams in one file.pdfAnn Wera
 
1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptxpallavidhade2
 
Insert Sort & Merge Sort Using C Programming
Insert Sort & Merge Sort Using C ProgrammingInsert Sort & Merge Sort Using C Programming
Insert Sort & Merge Sort Using C Programmingchandankumar364348
 
CS330-Lectures Statistics And Probability
CS330-Lectures Statistics And ProbabilityCS330-Lectures Statistics And Probability
CS330-Lectures Statistics And Probabilitybryan111472
 

Ähnlich wie Top school in delhi ncr (20)

Counting sort(Non Comparison Sort)
Counting sort(Non Comparison Sort)Counting sort(Non Comparison Sort)
Counting sort(Non Comparison Sort)
 
module2_dIVIDEncONQUER_2022.pdf
module2_dIVIDEncONQUER_2022.pdfmodule2_dIVIDEncONQUER_2022.pdf
module2_dIVIDEncONQUER_2022.pdf
 
Ch01 basic concepts_nosoluiton
Ch01 basic concepts_nosoluitonCh01 basic concepts_nosoluiton
Ch01 basic concepts_nosoluiton
 
Insertion sort bubble sort selection sort
Insertion sort bubble sort  selection sortInsertion sort bubble sort  selection sort
Insertion sort bubble sort selection sort
 
tutorial5.ppt
tutorial5.ppttutorial5.ppt
tutorial5.ppt
 
Dynamic Programming for 4th sem cse students
Dynamic Programming for 4th sem cse studentsDynamic Programming for 4th sem cse students
Dynamic Programming for 4th sem cse students
 
Algorithm Design and Analysis
Algorithm Design and AnalysisAlgorithm Design and Analysis
Algorithm Design and Analysis
 
Tech-1.pptx
Tech-1.pptxTech-1.pptx
Tech-1.pptx
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03
 
Linear Sorting
Linear SortingLinear Sorting
Linear Sorting
 
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
 
Randomized algorithms ver 1.0
Randomized algorithms ver 1.0Randomized algorithms ver 1.0
Randomized algorithms ver 1.0
 
search_sort Search sortSearch sortSearch sortSearch sort
search_sort Search sortSearch sortSearch sortSearch sortsearch_sort Search sortSearch sortSearch sortSearch sort
search_sort Search sortSearch sortSearch sortSearch sort
 
All homework and exams in one file.pdf
All homework and exams in one file.pdfAll homework and exams in one file.pdf
All homework and exams in one file.pdf
 
AsymptoticAnalysis.ppt
AsymptoticAnalysis.pptAsymptoticAnalysis.ppt
AsymptoticAnalysis.ppt
 
1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx
 
Computer science-formulas
Computer science-formulasComputer science-formulas
Computer science-formulas
 
Insert Sort & Merge Sort Using C Programming
Insert Sort & Merge Sort Using C ProgrammingInsert Sort & Merge Sort Using C Programming
Insert Sort & Merge Sort Using C Programming
 
CS330-Lectures Statistics And Probability
CS330-Lectures Statistics And ProbabilityCS330-Lectures Statistics And Probability
CS330-Lectures Statistics And Probability
 

Mehr von Edhole.com

Chartered accountant in dwarka
Chartered accountant in dwarkaChartered accountant in dwarka
Chartered accountant in dwarkaEdhole.com
 
Ca firm in dwarka
Ca firm in dwarkaCa firm in dwarka
Ca firm in dwarkaEdhole.com
 
Website development company surat
Website development company suratWebsite development company surat
Website development company suratEdhole.com
 
Website designing company in surat
Website designing company in suratWebsite designing company in surat
Website designing company in suratEdhole.com
 
Website dsigning company in india
Website dsigning company in indiaWebsite dsigning company in india
Website dsigning company in indiaEdhole.com
 
Website designing company in delhi
Website designing company in delhiWebsite designing company in delhi
Website designing company in delhiEdhole.com
 
Chartered accountant in dwarka
Chartered accountant in dwarkaChartered accountant in dwarka
Chartered accountant in dwarkaEdhole.com
 
Ca firm in dwarka
Ca firm in dwarkaCa firm in dwarka
Ca firm in dwarkaEdhole.com
 
Website development company surat
Website development company suratWebsite development company surat
Website development company suratEdhole.com
 
Website designing company in surat
Website designing company in suratWebsite designing company in surat
Website designing company in suratEdhole.com
 
Website designing company in india
Website designing company in indiaWebsite designing company in india
Website designing company in indiaEdhole.com
 
Website designing company in delhi
Website designing company in delhiWebsite designing company in delhi
Website designing company in delhiEdhole.com
 
Website designing company in mumbai
Website designing company in mumbaiWebsite designing company in mumbai
Website designing company in mumbaiEdhole.com
 
Website development company surat
Website development company suratWebsite development company surat
Website development company suratEdhole.com
 
Website desinging company in surat
Website desinging company in suratWebsite desinging company in surat
Website desinging company in suratEdhole.com
 
Website designing company in india
Website designing company in indiaWebsite designing company in india
Website designing company in indiaEdhole.com
 

Mehr von Edhole.com (20)

Ca in patna
Ca in patnaCa in patna
Ca in patna
 
Chartered accountant in dwarka
Chartered accountant in dwarkaChartered accountant in dwarka
Chartered accountant in dwarka
 
Ca in dwarka
Ca in dwarkaCa in dwarka
Ca in dwarka
 
Ca firm in dwarka
Ca firm in dwarkaCa firm in dwarka
Ca firm in dwarka
 
Website development company surat
Website development company suratWebsite development company surat
Website development company surat
 
Website designing company in surat
Website designing company in suratWebsite designing company in surat
Website designing company in surat
 
Website dsigning company in india
Website dsigning company in indiaWebsite dsigning company in india
Website dsigning company in india
 
Website designing company in delhi
Website designing company in delhiWebsite designing company in delhi
Website designing company in delhi
 
Ca in patna
Ca in patnaCa in patna
Ca in patna
 
Chartered accountant in dwarka
Chartered accountant in dwarkaChartered accountant in dwarka
Chartered accountant in dwarka
 
Ca firm in dwarka
Ca firm in dwarkaCa firm in dwarka
Ca firm in dwarka
 
Ca in dwarka
Ca in dwarkaCa in dwarka
Ca in dwarka
 
Website development company surat
Website development company suratWebsite development company surat
Website development company surat
 
Website designing company in surat
Website designing company in suratWebsite designing company in surat
Website designing company in surat
 
Website designing company in india
Website designing company in indiaWebsite designing company in india
Website designing company in india
 
Website designing company in delhi
Website designing company in delhiWebsite designing company in delhi
Website designing company in delhi
 
Website designing company in mumbai
Website designing company in mumbaiWebsite designing company in mumbai
Website designing company in mumbai
 
Website development company surat
Website development company suratWebsite development company surat
Website development company surat
 
Website desinging company in surat
Website desinging company in suratWebsite desinging company in surat
Website desinging company in surat
 
Website designing company in india
Website designing company in indiaWebsite designing company in india
Website designing company in india
 

Kürzlich hochgeladen

Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 

Kürzlich hochgeladen (20)

Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 

Top school in delhi ncr

  • 1. “Monte Carlo method” generate M random permutations of {1,…,20} let H be the number of those in which exactly one person gets his/her card back output H/M
  • 2. Lower bounds number from {1,2,3,…,9} 3 yes/no questions Can you always figure out the number?
  • 3. Lower bounds number from {1,2,3,…,8} 3 yes/no questions Can you always figure out the number?
  • 4. Lower bounds number from {1,2,3,…,8} 3 yes/no questions in {1,2,3,4} ? Y N in {1,2} ? in {5,6} ? Y Y N N =1 ? =3 ? =5 ? =7 ? Y Y Y Y N N N N 1 2 3 4 5 6 7 8
  • 5. Lower bounds number from {1,2,3,…,n} k yes/no questions
  • 6. Lower bounds number from {1,2,3,…,n} k yes/no questions k = é log2 n ù
  • 7. Lower bounds number from {1,2,3,…,n} k yes/no questions k = é log2 n ù INFORMATION THEORETIC LOWER BOUND: k³ log2 n
  • 8. Lower bounds n animals = {dog,cat,fish,eagle,snake, …} yes/no questions INFORMATION THEORETIC LOWER BOUND: k³ log2 n
  • 9. Lower bounds for sorting sorting by comparisons yes/no questions: is A[i]>A[j] ? data are not used to “control” computation in any other way A[1..n] 1 2 3 1 3 2 2 1 3 • 3 1 3 1 2 3 2 1
  • 10. Lower bounds for sorting sorting by comparisons yes/no questions: is A[i]>A[j] ? A[1..n] log a*b = log a + log b k ³ log2 n! ³ log2 n + log2 (n-1) + … log2 1 ³ (n/2) log2 (n/2) = Q(n log n)
  • 11. Lower bounds for sorting Theorem: Any comparison based sorting algorithm requires W(n ln n) comparisons in the worst-case.
  • 12. Lower bounds for search in sorted array INPUT: array A[1..n], element x OUTPUT: a position of x in A if x is in A ^ otherwise
  • 13. Lower bounds for search in sorted array INPUT: array A[1..n], element x OUTPUT: a position of x in A if x is in A ^ otherwise Theorem: Any comparison based algorithm for searching an element in a sorted array requires W(ln n) comparisons in the worst-case.
  • 14. Lower bounds for minimum INPUT: array A[1..n] OUTPUT: the smallest element of A
  • 15. Lower bounds for minimum INPUT: array A[1..n] OUTPUT: the smallest element of A INFORMATION THEORETIC LOWER BOUND: at least W(ln n) comparisons ADVERSARY LOWER BOUND: at least W(n) comparisons
  • 16. Counting sort array A[1..n] containing numbers from {1,…,k} 1st pass: count how many times iÎ {1,…,k} occurs 2nd pass: put the elements in B
  • 17. Counting sort array A[1..n] containing numbers from {1,…,k} for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=0 for I ¬ 1 to k+1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do D[A[j]]++ B[ D[A[j]] ] ¬ A[j]
  • 18. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ 1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 C 4 7 3 2 D 1 5 12 15
  • 19. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ 1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 C 4 7 3 2 D 2 5 12 15 1
  • 20. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ 1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 C 4 7 3 2 D 2 6 12 15 1 2
  • 21. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ 1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 C 4 7 3 2 D 2 6 13 15 1 2 3
  • 22. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ 1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 C 4 7 3 2 D 2 7 13 15 1 2 2 3
  • 23. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ 1 2 3 2 2 4 2 1 1 2 3 3 2 1 2 4 C 4 7 3 2 D 5 12 15 17 1 1 1 1 2 2 2 2 2 2 2 3 3 3 4 4
  • 24. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ stable sort = after sorting the items with the same key don’t switch order running time = O(n+k)
  • 25. Counting sort for i ¬ 1 to k do C[i] ¬ 0 for j ¬ 1 to n do C[A[j]]++ D[1]=1 for I ¬ 1 to k-1 do D[i+1] ¬ D[i]+C[i] for j ¬ 1 to n do B[ D[A[j]] ] ¬ A[j] D[A[j]]++ stable sort = after sorting the items with the same key don’t switch order running time = O(n+k) What if e.g., k = n2 ?
  • 26. Radix sort array A[1..n] containing numbers from {0,…,k2 - 1} 1) sort using counting sort with key = x mod k 2) sort using counting sort with key = ë x/k û Running time = ?
  • 27. Radix sort array A[1..n] containing numbers from {0,…,k2 - 1} 1) sort using counting sort with key = x mod k 2) sort using counting sort with key = ë x/k û Running time = O(n + k)
  • 28. Radix sort array A[1..n] containing numbers from {0,…,k2 - 1} example k=10 28 70 21 20 42 21 43 42 23 32 32 43 70 23 18 28 29 18 20 29
  • 29. Radix sort array A[1..n] containing numbers from {0,…,k2 - 1} example k=10 28 70 21 20 42 21 43 42 23 32 32 43 70 23 18 28 29 18 20 29
  • 30. Radix sort array A[1..n] containing numbers from {0,…,k2 - 1} example k=10 28 70 21 20 42 21 43 42 23 32 32 43 70 23 18 28 29 18 20 29 18 20 21 23 28 29 32 42 43 70
  • 31. Radix sort array A[1..n] containing numbers from {0,…,kd - 1} 1) sort using counting sort with key = x mod k 2) sort using counting sort with key = ë x/k û mod k 3) sort using counting sort with key = ë x/k2 û mod k … d) sort using counting sort with key = ë x/kd-1 û mod k
  • 32. Radix sort array A[1..n] containing numbers from {0,…,kd - 1} Correctness: after s-th step the numbers are sorted according to x mod ks Proof: By induction. Base case s=1 is trivial. 1) sort using counting sort with key = x mod k
  • 33. Radix sort array A[1..n] containing numbers from {0,…,kd - 1} Correctness: after s-th step the numbers are sorted according to x mod ks Proof: Now assume IH and execute s+1st step. Let x,y be such that x mod ks+1 < y mod ks+1. Then either ë x/ks û mod k < ë y/ks û mod k or ë x/ks û mod k = ë y/ks û mod k and x mod ks < y mod ks
  • 34. Bucket sort linear time sorting algorithm on average Assume some distribution on input. INPUT: n independently random numbers from the uniform distribution on the interval [0,1].
  • 35. Bucket sort INPUT: n independently random numbers from the uniform distribution on the interval [0,1]. for i ¬ 1 to n do insert A[i] into list B[ ëA[i]*nû ] for i ¬ 0 to n-1 do sort list B[i] output lists B[0],…,B[n-1]
  • 36. Bucket sort INPUT: n independently random numbers from the uniform distribution on the interval [0,1]. 0.13, 0.23, 0.56, 0.74, 0.18, 0.34, 0.12, 0.82, 0.14, 0.19 for i ¬ 1 to n do insert A[i] into list B[ ëA[i]*nû ] for i ¬ 0 to n-1 do sort list B[i] output lists B[0],…,B[n-1]
  • 37. Bucket sort INPUT: n independently random numbers from the uniform distribution on the interval [0,1]. 0.13, 0.23, 0.56, 0.74, 0.18, 0.34, 0.12, 0.52, 0.14, 0.19 1 2 5 7 1 3 1 5 1 1 B[1]: 0.13, 0.18, 0.12, 0.14, 0.19 B[2]: 0.23 B[3]: 0.34 B[5]: 0.56, 0.52 B[7]: 0.74 for i ¬ 1 to n do insert A[i] into list B[ ëA[i]*nû ] for i ¬ 0 to n-1 do sort list B[i] output lists B[0],…,B[n-1]
  • 38. Bucket sort INPUT: n independently random numbers from the uniform distribution on the interval [0,1]. 0.13, 0.23, 0.56, 0.74, 0.18, 0.34, 0.12, 0.52, 0.14, 0.19 1 2 5 7 1 3 1 5 1 1 B[1]: 0.12, 0.13, 0.14, 0.18, 0.19 B[2]: 0.23 B[3]: 0.34 B[5]: 0.52, 0.56 B[7]: 0.74 for i ¬ 1 to n do insert A[i] into list B[ ëA[i]*nû ] for i ¬ 0 to n-1 do sort list B[i] output lists B[0],…,B[n-1]
  • 39. Bucket sort for i ¬ 1 to n do insert A[i] into list B[ ëA[i]*nû ] for i ¬ 0 to n-1 do sort list B[i] output lists B[0],…,B[n-1] assume we use insert-sort worst-case running time?
  • 40. Bucket sort for i ¬ 1 to n do insert A[i] into list B[ ëA[i]*nû ] for i ¬ 0 to n-1 do sort list B[i] output lists B[0],…,B[n-1] assume we use insert-sort average-case running time? X0, X1, … , Xn-1 where Xi is the number of items that fall inside the i-th bucket
  • 41. Bucket sort X0, X1, … , Xn-1 where Xi is the number of items that fall inside the i-th bucket X0 2 + X1 2 + … + Xn-1 2 What is E[X0 2 + X1 2 + … + Xn-1 2] ? E[X0 2 + … + Xn-1 2 ] = E[X0 2] + … + E[Xn-1 2 ] = n E[X0 2] linearity of expectation symmetry of the problem
  • 42. Bucket sort E[X0 2] What is E[X0] ? value of X0 0 (1-p)n 1 n (1-p) n-1 k binomial(n,k) pk (1-p)n-k n pn p=1/n
  • 43. Bucket sort E[X0 2] E[X0] = 1 0 (1-p)n 1 n (1-p) n-1 k binomial(n,k) pk (1-p)n-k n pn p=1/n n E[X0] = å k * binomial(n,k) pk (1-p)n-k k=0
  • 44. Bucket sort E[X0 2] E[X0] = 1 p=1/n n E[X0] = å k * binomial(n,k) pk (1-p)n-k k=1 binomial (n,k) = (n/k) * binomial (n-1,k-1) n å binomial(n,k) pk (1-p)n-k = 1 k=0
  • 45. Bucket sort E[X0 2] E[X0] = 1 p=1/n n E[X0] = å n* binomial(n-1,k-1) pk (1-p)n-k k=1 n n = n*p å binomial(n-1,k-1) pk-1(1-p)n-k = n*p k=1 å binomial(n,k) pk (1-p)n-k = 1 k=0
  • 46. Bucket sort E[X0 2] 0 (1-p)n 1 n (1-p) n-1 k binomial(n,k) pk (1-p)n-k n pn p=1/n 2]= å k2 * binomial(n,k) pk (1-p)n-k k=0 E[X0 n
  • 47. Bucket sort E[X0 2] p=1/n E[X0 n 2]= å k2 * binomial(n,k) pk (1-p)n-k k=0 n = å k * binomial(n,k) pk (1-p)n-k k=0 + n å k(k-1) * binomial(n,k) pk (1-p)n-k k=0
  • 48. Bucket sort E[X0 2] p=1/n E[X0 n 2]= å k2 * binomial(n,k) pk (1-p)n-k k=0 n = å k * binomial(n,k) pk (1-p)n-k k=0 + n n*p å k(k-1) * binomial(n,k) pk (1-p)n-k k=0
  • 49. Bucket sort E[X0 2] p=1/n n 2]= å k(k-1) * binomial(n,k) pk (1-p)n-k E[X0 +n*p k=2 binomial (n,k) = (n/k) * binomial (n-1,k-1) = (n/k) * ((n-1)/(k-1)) * binomial (n-2,k-2) E[X0 2] = n* (n-1) * p2 + n*p