Stos Drukuj
Ocena użytkowników: / 0
SłabyŚwietny 
Wpisany przez Patryk yarpo Jar   
wtorek, 22 września 2009 19:03

Stos jest strukturą danych („Ostatni wchodzi, pierwszy wychodzi: Last In First Out” - LIFO), która polega na tym, że nowe dane odkładane są na wierzchołek, i tylko stamtąd można je zebrać. Można to porównać ze stosem talerzy – gdy chcesz odłożyć tam nowy talerz kładziesz go na „górę” (tu nazywa się wierzchołkiem), gdy chcesz zjąć talerz to zdejmujesz go z góry (zakładamy, że kombinujesz).

W JS stos można tworzyć abstrakcyjnie – robimy zwykłą tablicę i zmienną która wskazuje na wierzchołek. Ale... po co, skoro JS dostarcza nam gotowca :).

<html>

<head>

    <script type="text/javascript"> 


    function dzialanie_stosu()

    {

        var stos = new Array(); // stos jest zwykłą tablicą

        stos.push('Ania');

        stos.push('Justyna');

        stos.push('Kasia');

        stos.push('Elsa');

        /*

            aktualnie na stosie jest tak:

            Elsa - to jest wierzchołek

            Kasia

            Justyna

            Ania - to jest sam spód stosu

        */

        alert(stos.toString()); // wyswietlmy sobie stos

        stos.pop() // zrzucenie wierzchołka "Elsa" ze stosu

        alert(stos.toString()); // Elsy nie ma :(

        stos.push('Marta');

        alert(stos.toString()); // na wierzchołku jest Marta

    }

    </script> 

</head>

<body onload='dzialanie_stosu()'>  </body> 

</html>


I wszystko ładnie działa :). Bardzo przydatne przy wielu algorytmach.