Вы находитесь на странице: 1из 5

Technische Universitat M

unchen
Fakultat f
ur Informatik
Lehrstuhl f
ur Effiziente Algorithmen
Prof. Dr. Harald Racke
Chintan Shah

Wintersemester 2012
Losungsblatt 2
16 November 2012

Effiziente Algorithmen und Datenstrukturen I


Aufgabe 1 (10 Punkte)
Solve the following recurrence relations:
1. an = an1 + 6n1 with a0 = 15.
2. an = an1 + 9an2 11an3 + 4an4 with a0 = 7, a1 = 4, a2 = 48 and a3 = 0.
L
osungsvorschlag
1.
an = an1 + 6n1
an1 = an2 + 6n2

(1)
(2)

Multiplying equation 2 by 6 and subtracting from equation 1 gives us


an = 7an1 6an2
The characteristic polynomial of this recurrence is 2 7 + 6 = 0. Solving for
gives us = 6 or = 1. So the solution is of the form an = 1n + 6n . Also,
a0 = 15 gives us a1 = 14. Hence,
a0 = 15 = +
a1 = 14 = + 6
Solving for and gives us = 15 15 and = 15 . So,
1 6n
an = 15 +
5
5
2. The characteristic polynomial of this recurrence relation is 4 +3 92 +114 = 0
or ( 1)3 ( + 4) = 0. So the solution is of the form an = (4)n + n2 + n + .
Hence,
a0 = 7 =

+
a1 = 4 = 4 + + +
a2 = 48 = 16 + 4 + 2 +
a3 = 0 = 64 + 9 + 3 +
Solving this system of linear equations gives us = 1, = 4, = 12 and = 8.
So,
an = (4)n + 4n2 + 12n 8

Aufgabe 2 (10 Punkte)


Solve the following recurrence relations using generating functions:
1. an = an1 + 2n1 for n 1 with a0 = 2.
2. an = 3an1 3an2 + an3 for n 3 with a0 = a1 = a2 = 1.
L
osungsvorschlag
1. an = an1 + 2n1 for n 1 with a0 = 2.
X
A(z) =
an z n
n0

= a0 +

an z n

n1

= 2+

(an1 + 2n1 )z n

n1

= 2+z

= 2+z

(1 z)A(z) = 2 + z

an1 z n1 + z

n1

n1
n

an z +

n0

X
n0

2n z n

n0

z
1 2z
2 3z
1 2z
2 3z
(1 2z)(1 z)
1
1
+
1 2z 1 z
X
X
2n z n +
zn

= 2+
=
A(z) =
=
=

n0

n0

(2n + 1)z n

n0

an = 2 n + 1

2n z n

2n1 z n1

2. an = 3an1 3an2 + an3 for n 3 with a0 = a1 = a2 = 1.


X
A(z) =
an z n
n0

= a0 + a1 z + a2 z 2 +

(3an1 3an2 + an3 )z n

n3

= 1 + z + z 2 + 3z

an1 z n1 3z 2

+z

an3 z

an2 z n2

n3

n3
3

n3

n3

= 1 + z + z 2 + 3z(A(z) 1 z) 3z 2 (A(z) 1)
+z 3 A(z)
(1 3z + 3z 2 z 3 )A(z) = 1 + z + z 2 3z 3z 2 + 3z 2
(1 z)2
A(z) =
(1 z)3
1
=
1z
X
=
zn
n0

an = 1

Aufgabe 3 (10 Punkte)


Solve the following recurrence using a generating function:
an = an1 + an2 for n 2 with a0 = 0 and a1 = 1.
L
osungsvorschlag

A(z) =

an z n

n0

= a0 + a1 z +

an zn

n2

= z+z

an1 z n1 +

n2

X
n2
2

an2 z n

= z + z(A(z) a0 ) + z A(z)
= z + zA(z) + z 2 A(z)
z
A(z) =
1 z z2
Note that (1 z z 2 ) = (1 z)(1 z) for

1+ 5
1 5
=
and =
2
2
3

We want to find A, B satisfying


B
z
A
+
=
2
1zz
1 z 1 z
Solving, for A, B gives
1

A =

1
1
=

1
1
=
1

5


1
1
1

A(z) =
5 1 z 1 z
!
1 X n n X n n
=
z
z
5 n0
n0
X (n n )

=
zn
5
n0
B =

n n

5
"
!n
1
1+ 5
=

2
5

an =

!n #
1 5
2

Aufgabe 4 (10 Punkte)


Solve the following recurrence using a generating function:
an = 5an1 8an2 + 4an3 for n 3 with a0 = 1, a1 = 3 and a2 = 11.
L
osungsvorschlag

A(z) =

an z n

n0

= a0 + a1 z + a2 z 2 +

(5an1 8an2 + 4an3 )z n

n3
2

= 1 + 3z + 11z + 5z(A(z) 3z 1) 8z 2 (A(z) 1)


+4z 3 A(z)
(1 5z + 8z 2 4z 3 )A(z) = 1 2z + 4z 2
1 2z + 4z 2
A(z) =
(1 z)(1 2z)2
A
B
C
=
+
+
, (say)
1 z 1 2z (1 2z)2

Solving for A, B, C gives


4 = 4A + 2B
2 = 4A 3B C
1 = A+B+C
or A = 3, B = 4, C = 2.
Therefore,
3
4
2

+
1 z 1 2z (1 2z)2
X
X
X
= 3
zn 4
2n z n + 2
(n + 1)2n z n

A(z) =

n0

n0

(3 + (n 1)2n+1 )z n

n0

an = 3 + (n 1)2n+1

n0

Вам также может понравиться