You are on page 1of 46

STRUKTURY

DANYCH
Struktura danych -
to wyspecjalizowany format organizowania, przetwarzania i przechowywania danych w
pamięci komputera.
STRUKTURY DANYCH

LINIOWE NIELINIOWE
LINIOWE STRUKTURY
DANYCH
LINIOWE STRUKTURY DANYCH

Elementy są ułożone sekwencyjnie, jeden po drugim


ARRAY(TABLICA)
składa się z wielu elementów tego samego typu ułożonych
jedna po drugiej z możliwością odwoływania się do nich
za pomocą indeksów
STACK(STOS)
składa się z ciągu elementów tego samego typu z
możliwością wkładania i wyciągania elementów tylko z
jego końca.

O strukturze danych stosu można myśleć jak o stosie


talerzy ułożonych jeden na drugim.
PUSTY STOS PUSH PUSH PUSH POP
FUNKCJE W STOSIE C++
Push stackName.push(item);

Pop stackName.pop();

Top stackName.top();

Empty stackEmpty();

Size stackName.size();
QUEUE(KOLEJKA) DODAĆ

składa się z ciągu elementów tego samego typu z


możliwością wkładania elementów na jej końcu i
wyciągania elementów z jej początku.

USUNĄĆ
PUSTA KOLEJKA PUSH

PUSH POP
FUNKCJE W KOLEJCE C++
o EMPTY()
o SIZE()
o SWAP
o EMPLACE()
o FRONT
o BACK
o PUSH(G)
o POP()
LINKED LIST(LISTA)
składa się z elementów tego samego typu tak, że elementy są wzajemnie ze sobą powiązane tak, że każdy
element zna tylko swojego następnika (ew. również poprzednika).

HEAD NULL
FUNKCJE W LIŚCIE C++
o FRONT/BACK o REVERSE()
o BEGIN/END o CLEAR()
o RBEGIN/REND o SWAP()
o INSERT() o SORT()
o PUSH_FRONT/BACK() o MERGE()
o POP_FRONT/BACK() o SPLICE()
o SIZE() o EMPTY
o MAX_SIZE()
POJEDYNCZO
WIĄZANA LISTA

HEAD NULL
PODWÓJNIE
WIĄZANA LISTA

HEAD
NULL
NULL
LISTA WIĄZANA
KOLOWO

HEAD
NIELINIOWE
STRUKTURY DANYCH
NIELINIOWE STRUKTURY DANYCH

Elementy są ułożone w sposób hierarchiczny, w którym jeden element będzie


połączony z jednym lub większą liczbą elementów.
GRAPH(GRAF)
składa się z wierzchołków i krawędzi, które łączą ze
sobą poszczególne wierzchołki w różny sposób.
V={0, 1, 2, 3};

E={(0, 1), (0, 2), (0, 3), (1, 2)}

G={V, E}
MACIERZ
SĄSIEDZTWA
0 1 2 3

3
LISTA
SĄSIEDZTWA
TREE(DRZEWO)
składa się z elementów tego samego typu
ułożonych hierarchicznie w taki sposób, że każdy
węzeł drzewa może być rodzicem dla innych
węzłów, a węzły mające swojego rodzica
nazywamy dziećmi.
EDGE

NODE
WYSOKOŚĆ I
GŁĘBOKOŚĆ WĘZŁÓW
LAS

Zbiór rozłącznych drzew nazywany jest lasem.


BINARY TREE
DATA ITEM

ADRESS OF LEFT CHILD ADRESS OF RIGHT CHILD


BINARY SEARCH TREE
AVL TREE
1

-1 -1

0 1 0

0
RÓŻNICA
LINIOWE NIELINIOWE

Wszystkie elementy znajdują się na jednej Elementy danych znajdują się na różnych
warstwie warstwach.

Może być przeglądany w jednym przebiegu Wymaga wielu przebiegów

Wykorzystanie pamięci nie jest efektywne Różne struktury wykorzystują pamięć w różny
sposób, w zależności od potrzeb.
DZIĘKUJĘ ZA
UWAGĘ

You might also like