Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 1

1) Master Theorem 11 j ← 1

n
12 for k ← p to r
a. T ( n )=3 T
2 ()
+n log n 13 do if L[i] ≤ R[j]
14 then A[k] ← L[i]
15 i ← i + 1
We have f ( n ) =n log n and log a
log 3−∈ for
n =nlog 3 ≈ n 1.585. Since n log n=O(n
b
) 16 else A[k] ← R[j]
17 j ← j + 1

any0<∈<0.58 , by case 1 of the master theorem we have T ( n )=Θ ( nlog 3 ) MERGE-SORT(A, p,r)
1 if p < r
n
b. T ( n )=4 T
2 ()
+ n2 √ n 2 then q ← 띫(p + r)/2 뚫
3M ERGE-SORT(A, p,q)
4M ERGE-SORT(A, q +1,r)
We have 5M ERGE(A, p, q,r)
log b a log2 4
f ( n )=n2 √ n=n5 /2∧n =nlog 2 . Since n5/ 2=Ω ( n log2+3 /2 ) , we look at theregularity cond ition∈case 3 o
=n
2 n5 /2
We have af ( n/b )=4 ( n /2 ) √ n/2= ≤ c n5 /2 for 1/ √ 2≤ c <1.
√2
Case 3 applies ,∧we have T ( n )=Θ ( n2 √ n ) .
n
c. T ( n )=16 T
4
+ n2 ()
With the help of master theorem , a=16 ,b=4 , f ( n ) =n2 ,∧¿
n log a =nlog 16=n 2 . Since n2 =Θ ( n log 16 ) , case 2 of the master theorem applies ,∧T ( n )=Θ ( n2 log n ) .
b 4 4

QUICKSORT(A, p,r)
1 if p < r
2 then q ← PARTITION(A, p,r)
3Q UICKSORT(A, p,q − 1)
4Q UICKSORT(A,q + 1,r)

PARTITION(A, p,r)
1 x ← A[r]
2i←p−1
3 for j ← p to r − 1
4 do if A[j] ≤ x
5 then i ← i + 1
6 exchange A[i] ↔ A[j]
7 exchange A[i + 1] ↔ A[r]
8 return i + 1

MAX-HEAPIFY(A,i)
1 l ← L EFT(i)
2 r ← RIGHT(i)
3 if l ≤ heap-size[A]an dA[l] > A[i]
4 then largest ← l
5 else largest ← i
6 if r ≤ heap-size[A]a ndA[r] > A[largest]
7 then largest ← r
8 if largest 㿻= i
9 then exchange A[i] ↔ A[largest]
10 M AX-HEAPIFY(A, largest)

BUILD-MAX-HEAP(A)
1 heap-size[A] ← length[A]
2 for i ← 㦋 length[A]/2 㶻 downto 1
3 do MAX-HEAPIFY(A,i)

HEAPSORT(A)
1B UILD-MAX-HEAP(A)
2 for i ← length[A] downto 2
3 do exchange A[1] ↔ A[i]
4 heap-size[A] ← heap-size[A] − 1
5M AX-HEAPIFY(A,1)

MERGE(A, p,q,r)
1n1←q−p+1
2n2←r−q
3 create arrays L[1..n 1 + 1] and R[1 ..n 2 + 1]
4 for i ← 1 to n 1
5 do L[i] ← A[p + i − 1]
6 for j ← 1 to n 2
7 do R[ j] ← A[q + j]
8 L[n 1 + 1] ←∞
9 R[n 2 + 1] ←∞
10 i ← 1

You might also like