• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Stos - implementacja zrozumienie - wskaźniki wskaźników itd.

VPS Starter Arubacloud
+1 głos
2,283 wizyt
pytanie zadane 18 stycznia 2016 w C i C++ przez Sinnley Stary wyjadacz (12,810 p.)

Witam, próbuję zrozumieć implementację stosu na język c++ ze strony algorytm.org.

Oprócz ogólnego zagmatwania nie rozumiem zapisu dwóch gwiazdek obok siebie. Udało mi się dowiedzieć, że ma to jakiś związek z tablicami kilkuwymarowymi, ale jaki jest ten związek i co tablice dwuwymiarowe robią w tym programie - tego już nie wiem. Byłbym bardzo wdzięczny za objaśnienie mi tej implementacji bo jest to dla mnie bardzo kłopotliwe a jednocześnie bardzo ważne. Kod z algorytmu wstawiam poniżej.

/stos
//www.algorytm.org
 
#include < iostream >
using namespace std;
 
struct liczba
{
int wartosc;
liczba *next;
 
};
 
//dodaj element do stosu (root)
void dodaj (liczba **root)
{  
liczba *nowa=new liczba;
cin>>nowa->wartosc;
nowa->next=*root;
*root=nowa;
}
 
//zdejmij element ze stosu (root)
void zdejmij (liczba **root)
{
if (*root) //sprawdz czy stos nie jest juz pusty
{
liczba *temp=*root;
*root=(*root)->next;
cout<<temp->wartosc<<endl;
delete temp;
}
}
 
int main()
{
char warunek;
liczba *root=NULL, *nowa = NULL;
while (cin>>warunek)
{
switch (warunek)
{
case 'd': //dodaj element do stosu
dodaj(&root);
break;
case 'z':
zdejmij(&root); //zdejmi element ze stosu
break;
case 'k': //zakoncz program
return 0;
}
}
 
return 0;
}

 

1 odpowiedź

0 głosów
odpowiedź 18 stycznia 2016 przez Patrycjerz Mędrzec (192,320 p.)

Podwójne gwiazdki to wskaźnik na wskaźnik i w tej sytuacji nie ma to żadnego związku z tablicą wielowymiarową. W tej implementacji został on wykorzystany po to, aby pracować na oryginalnym wskaźniku root.

Podobne pytania

0 głosów
3 odpowiedzi 875 wizyt
0 głosów
2 odpowiedzi 297 wizyt
pytanie zadane 11 stycznia 2021 w C i C++ przez Icar Nowicjusz (150 p.)
+1 głos
1 odpowiedź 1,855 wizyt
pytanie zadane 24 lutego 2018 w C i C++ przez Sic Dyskutant (8,510 p.)

93,032 zapytań

141,996 odpowiedzi

321,300 komentarzy

62,379 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...