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 13. 11. 2010 14:04

VojtechSejkora
Příspěvky: 176
Reputace:   
 

Halda v céčku

potřebovla bych pomoci... nevím jak mám naprogramovat hladu v céčku....

já jsem to dělal takto

Code:

pridej(int prvek){
        
               int p=k-1;
               
                  halda[p]=prvek;
                  
                  while(halda[p]<halda[p/2] || halda[p/2]==-1){
                       int pom=halda[p/2];

                       halda[p/2]=halda[p];
                       halda[p]=pom;
                       p/=2;
                  }
                  
                  while(1){
                      if(halda[p-1]==-1){
                        halda[p-1]=halda[p];
                        halda[p]=-1;
                        p--;
                      }else
                            break;
                  }
    }

jak asi tušíte tak mi to nefunguje:(
pro vsup
1 9 2 8 3 7 4 6 5

mi to udělá bohužel toto
1,2,3,7,4,6,5,-1,-1

prosím poraďte mi.... díky

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson