Kategorie: Programowanie

[C] Implementacja stosu

Cześć! Cieszę się, że mnie odwiedziłeś/aś. Zanim przejdziesz do artykułu chciałbym zwrocić Ci uwagę na to, że ten artykuł był pisany kilka lat temu (2012-05-10) miej więc proszę na uwadzę że rozwiązania i przemyślenia które tu znajdziesz nie muszą być aktualne. Niemniej jednak zachęcam do przeczytania.

Stos jest listą jednokierunkową w które operacje wykonywane są na 1 elemencie.  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//Implementacja stosu, Mateusz Mazurek 10 maj 2012r.
#include <stdio.h>
#include <stdlib.h>

typedef struct a{

  int a;
  struct a *next;

} strk;

int odczyt(strk *); //odczyt 1 elementu
strk* usun(strk *); // usuwanie 1 elementu
strk* wstaw(strk *, int); // wstawienie na poczatek
int main()
{
  strk a;
  strk* wsk=&a;
  wsk->next=NULL;
  wsk->a=1;
  wsk=wstaw(wsk, 2);
  wsk=usun(wsk);
  wsk=wstaw(wsk, 3);
  wsk=wstaw(wsk, 4);
  wsk=usun(wsk);
  printf("%d\n\n", odczyt(wsk));
  return 0;
}
int odczyt(strk* a){

  return a->a;

}
strk * usun(strk *a){
  strk *w =a;// zapamietujemy to co usuwamy
  a=a->next; // przeskakujemy usuwany element
  free(w); // zwalniamy pamiec przeskoczonego elementu
  return a; // tak spreparowana liste wzracamy
}

strk* wstaw(strk *a, int co){
  strk *nowy = (strk*) malloc(sizeof(strk));//nowy element w pamiec

  nowy->a=co;// wartosc przpisana
  nowy->next=a;// wskaznik przypisany do reszty listy
  a=nowy;// podmiana
  return a;// zwracamy nowa liste
}
Dzięki za wizytę,
Mateusz Mazurek
Mateusz M.

Pokaż komentarze

Ostatnie wpisy

Podsumowanie: luty i marzec 2024

Ostatnio tygodnie były tak bardzo wypełnione, że nie udało mi się napisać nawet krótkiego podsumowanie. Więc dziś zbiorczo podsumuję luty… Read More

2 tygodnie ago

Podsumowanie: styczeń 2024

Zapraszam na krótkie podsumowanie miesiąca. Książki W styczniu przeczytałem "Homo Deus: Historia jutra". Książka łudząco podoba do wcześniejszej książki tego… Read More

3 miesiące ago

Podsumowanie roku 2023

Cześć! Zapraszam na podsumowanie roku 2023. Książki Zacznijmy od książek. W tym roku cel 35 książek nie został osiągnięty. Niemniej… Read More

4 miesiące ago

Podsumowanie: grudzień 2023

Zapraszam na krótkie podsumowanie miesiąca. Książki W grudniu skończyłem czytać Mein Kampf. Nudna książka. Ciekawsze fragmenty można by było streścić… Read More

4 miesiące ago

Praca zdalna – co z nią dalej?

Cześć, ostatnio w Internecie pojawiło się dużo artykułów, które nie były przychylne pracy zdalnej. Z drugiej strony większość komentarzy pod… Read More

4 miesiące ago

Podsumowanie: listopad 2023

Zapraszam na krótkie podsumowanie miesiąca. Książki W listopadzie dokończyłem cykl "Z mgły zrodzony" Sandersona. Tylko "Stop prawa" mi nie do… Read More

5 miesięcy ago