Introduction to Algorithms, Third Edition


Step 2: A recursive solution



Download 4,84 Mb.
Pdf ko'rish
bet246/618
Sana07.04.2022
Hajmi4,84 Mb.
#534272
1   ...   242   243   244   245   246   247   248   249   ...   618
Bog'liq
Introduction-to-algorithms-3rd-edition

Step 2: A recursive solution
Next, we define the cost of an optimal solution recursively in terms of the optimal
solutions to subproblems. For the matrix-chain multiplication problem, we pick as
our subproblems the problems of determining the minimum cost of parenthesizing
A
i
A
i
C
1
A
j
for
1
i
j
n
. Let
mŒi; j 
be the minimum number of scalar
multiplications needed to compute the matrix
A
i ::j
; for the full problem, the lowest-
cost way to compute
A
1::n
would thus be
mŒ1; n
.
We can define
mŒi; j 
recursively as follows. If
i
D
j
, the problem is trivial;
the chain consists of just one matrix
A
i ::i
D
A
i
, so that no scalar multiplications
are necessary to compute the product. Thus,
mŒi; i 
D
0
for
i
D
1; 2; : : : ; n
. To
compute
mŒi; j 
when
i < j
, we take advantage of the structure of an optimal
solution from step 1. Let us assume that to optimally parenthesize, we split the
product
A
i
A
i
C
1
A
j
between
A
k
and
A
k
C
1
, where
i
k < j
. Then,
mŒi; j 
equals the minimum cost for computing the subproducts
A
i ::k
and
A
k
C
1::j
, plus the
cost of multiplying these two matrices together. Recalling that each matrix
A
i
is
p
i
1
p
i
, we see that computing the matrix product
A
i ::k
A
k
C
1::j
takes
p
i
1
p
k
p
j
scalar multiplications. Thus, we obtain
mŒi; j 
D
mŒi; k
C
mŒk
C
1; j 
C
p
i
1
p
k
p
j
:
This recursive equation assumes that we know the value of
k
, which we do not.
There are only
j
i
possible values for
k
, however, namely
k
D
i; i
C
1; : : : ; j
1
.
Since the optimal parenthesization must use one of these values for
k
, we need only
check them all to find the best. Thus, our recursive definition for the minimum cost
of parenthesizing the product
A
i
A
i
C
1
A
j
becomes
mŒi; j 
D
(
0
if
i
D
j ;
min
i
kf
mŒi; k
C
mŒk
C
1; j 
C
p
i
1
p
k
p
j
g
if
i < j :
(15.7)
The
mŒi; j 
values give the costs of optimal solutions to subproblems, but they
do not provide all the information we need to construct an optimal solution. To
help us do so, we define
sŒi; j 
to be a value of
k
at which we split the product
A
i
A
i
C
1
A
j
in an optimal parenthesization. That is,
sŒi; j 
equals a value
k
such
that
mŒi; j 
D
mŒi; k
C
mŒk
C
1; j 
C
p
i
1
p
k
p
j
.

Download 4,84 Mb.

Do'stlaringiz bilan baham:
1   ...   242   243   244   245   246   247   248   249   ...   618




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish