Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 19. 03. 2016 14:43

bufferko
Zelenáč
Příspěvky: 1
Reputace:   
 

indukcia nad jednoduchym stackom

Dobry den,
Mal by som otazku ohladne indukcie, ide o urcenie korektnosti algoritmu.
Mam algoritmus s polom X[] s nahodne zvolenymi kladnymi celymi cislami napr. X[3,2,5,4,3,2,5]
algoritmus prechadza postupne pole a ak dany prvok Xn je vacsi ako vrchol stacku, POPne sa zo stacku, v cykle dokym nenajde vyssi prvok alebo stack nie je prazdny, nasledne sa Xn zapise do stacku.
Pr. behu
S - stack
X - pole

Code:

1. iteracia 
X1=3
S prazdne -> push 3 do S
S = 3

2.iteracia
X2 = 2
2 < 3 -> push 2 do S
S = 3,2

3. iteracia
X3 = 5
5>2 -> pop S; 
S = 3
5>3 -> pop S
S prazdne -> push 5 do S
S = 5

4. iteracia
X4 = 4
4<5 push 4 do S
S= 5,4
.....

Invariant tohto algoritmu je $ Xn>Xn+1, pre X\in S$
Korektnost by som tu urcoval matematickou indukciou, ktora je podla mna cela chybne uvazovana, ale tu uvadzam:

Code:

berme napr. stack zo 4. iteracie aby sme mali nejake data - S[5,4]
Xn > Xn+1
pre n = 1 
   5>4 -> plati
pre n = n+1
   Xn+1 > Xn+2

Mozete ma prosim niekto usmernit/napovedat ako by som mohol/mal riesit korektnost v takomto pripade ?

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson