ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝΜΕΘΟΔΟΣ ΕΠΑΝΑΛΗΨΗΣ
Παράδειγµα: Να λύσετε την αναδροµή:
Τ 3 2 4 0
1 0
Λύση:
Τ 3 2 4 3 3 4 4 4
3 4 3 ∙ 4 4 3 3 6 4 3 ∙ 4 4
3 6 3 ∙ 4 3 ∙ 4 4
⋯
3 2 3 ∙ 4 ⋯ 3 ∙ 4 3 ∙ 4 4
Η αναδροµή σταµατά όταν 2 0 ⇒ k /2
3
!
" 0 3
!
" ∙ 4 ⋯ 3 ∙ 4 3 ∙ 4 4
3
!
" 4 3
!
" ⋯ 3 3 1
3
!
" 4 ∑ 3$
!
"
$%&
3
!
" 4
!
"
3
!
" 2 3
!
" 1 Θ 3
!
"
1. Κάνουµε 3 εφαρµογές της αναδροµικής σχέσης (µέχρι
να φτάσουµε στη µορφή: Τ n ) * ).
Χρήσιµο το πρόχειρο
2. Εκτίµηση της σειράς που προκύπτει µετά από k
επαναλήψεις (µας καθοδηγεί ο όρος: * )
3. Υπολογίζουµε πότε σταµατάει η αναδροµή (Θέτουµε
* & και λύνουµε ως προς k). Π.χ. αν & 0,
τότε k /*
4. Αντικατάσταση του k στον τύπο του βήµατος 2
5. Υπολογισµός της σειράς που προκύπτει. Χρήσιµοι οι
τύποι:∑ +$,
$%&
-!./
-
Η µέθοδος της επανάληψης χρησιµοποιείται για την
επίλυση της αναδροµικής σχέσης
0 1
, 3
4, 3
• Όταν το ζητάει ρητά η εκφώνηση
• Προσοχη: 5 6
Τ 3 2 4
2 3 4 4
4 3 6 4
Πρόχειρο:
ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝΜΕΘΟΔΟΣ ΕΠΑΝΑΛΗΨΗΣ 8
Παράδειγµα: Να λύσετε την αναδροµή:
Τ 1 3 0
1 0
Λύση:
1. Γράφουµε όλους τους αναδροµικούς όρους T(n), T(n-
1),… µέχρι και την οριακή περίπτωση της αναδροµής
2. Προσθέτουµε τις εξισώσεις κατά µέλη
3. Υπολογισµός της σειράς που προκύπτει. Χρήσιµοι οι
τύποι: ∑ 9,
$%
, ,:
∑ 9,
$%
, ,: ,:
;
Η µέθοδος της επανάληψης (κάνοντας άθροισµα κατά
µέλη) χρησιµοποιείται για την επίλυση της αναδροµικής
σχέσης
0 1
8 , 3
, 3
1)0(
13)0()1(
23)1()2(
...
)2(3)3()2(
)1(3)2()1(
3)1()(
=
⋅+=
⋅+=
−+−=−
−+−=−
+−=
T
TT
TT
nnTnT
nnTnT
nnTnT
)(+
15,15,1
2
)1(
3131
])1()2(...21[31
3)1(3)2(3...23131
11323...)2(3)1(33)(
2
1
++=
=
+
+=+=
+−+−++++=
+−+−++⋅+⋅+=
+⋅+⋅++−+−+=
∑=
nn
nn
i
nnn
nnn
nnnnT
n
i
ΠΑΡΑ∆ΕΙΓΜΑ:
Λύση:
ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝΑΝΑΔΡΟΜΙΚΗ ΣΧΕΣΗ <
8
Λύση της αναδρομής:
<
8
Υπολογίζουμε την ποσότητα
1. Αν τότε (δραστ.3.6)
2. Αν τότε (δραστ.3.6)
3. Αν τότε η δραστηριότητα 3.6 έχει αποτύχει και πάμε
υποχρεωτικά με δένδρο αναδρομής
ba
11
+
))(()( nfnT Θ=
)log)(()( nnfnT ⋅Θ=
1
11
<+
ba
1
11
=+
ba
1
11
>+
ba
ΠΑΡΑ∆ΕΙΓΜΑ:
Να υπολογίσετε µια ασυµπτωτική εκτίµηση της
αναδροµής:
Λύση:
Ισχύει: άρα από την
δραστ.3.6 ισχύει:
ΠΑΡΑ∆ΕΙΓΜΑ:
Να υπολογίσετε µια ασυµπτωτική εκτίµηση της
αναδροµής:
Λύση:
Ισχύει: άρα από την
δραστ.3.6 ισχύει:
1
12
7
12
3
12
4
4
1
3
1
<=+=+
)()( 2
nnT Θ=
n
n
T
n
TnT +
+
=
3
2
3
)(
1
3
3
3
2
3
1
==+
)log()( nnnT ⋅Θ=
2
43
)( n
n
T
n
TnT +
+
=
Το ύψος του δένδρου είναι log2n (αν c είναι ο µικρότερος από τους
δύο παρονοµαστές (δηλ. c=min{a,b} ) έπεται ότι το ύψος του
δένδρου είναι logcn.)