linearne strukture.ppt
Post on 21-Dec-2015
227 Views
Preview:
TRANSCRIPT
Strukture podataka i Strukture podataka i algoritmialgoritmiLinearne Linearne strukturestrukture
SadržajSadržaj
Linearne struktureLinearne strukture
StSteekk
RedRed
ListaLista
Definicija preko ATPDefinicija preko ATP
ImplementacijaImplementacija
Linearne struktureLinearne strukture
Linearna uređenostLinearna uređenost– Sekvenca elemenataSekvenca elemenata– Jedan prethodnik, jedan sledbenikJedan prethodnik, jedan sledbenik
Vrste linearnih strukturaVrste linearnih struktura– Razlikuju se po mestu (lokaciji) gde se vrši Razlikuju se po mestu (lokaciji) gde se vrši
ubacivanje i izbacivanje elemenataubacivanje i izbacivanje elemenata– StSteek k
ubaci i izbaci sa istog krajaubaci i izbaci sa istog kraja
– Red Red ubaci na jednom, izbaci sa drugogubaci na jednom, izbaci sa drugog
– Lista Lista ubaci/izbaci bilo gdeubaci/izbaci bilo gde
StSteek k ((stackstack))
LIFO struktura (Last In First Out)LIFO struktura (Last In First Out) Primer: Držač za Pez bombonePrimer: Držač za Pez bombone
StSteek k ((stackstack))
Osnovne operacijeOsnovne operacije– Ubacivanje (Push)Ubacivanje (Push)– Izbacivanje (Pop)Izbacivanje (Pop)
Ostale operacijeOstale operacije– Vrati vrh (Peek)Vrati vrh (Peek)– Prazan stPrazan steek k – Broj elemenataBroj elemenata
PrimeriPrimeri
StSteek k ((stackstack))
Definicija preko ATPDefinicija preko ATP
public interface IStack
{
boolean isEmpty();
void Push(int obj);
int Pop();
int Peek();
}
Red Red ((queuequeue))
FIFO struktura (First In First Out)FIFO struktura (First In First Out) Primer: Red u prodavniciPrimer: Red u prodavnici
Red Red ((queuequeue))
Osnovne operacijeOsnovne operacije– Ubacivanje (Enqueue)Ubacivanje (Enqueue)– Izbacivanje (Dequeue)Izbacivanje (Dequeue)
Ostale operacijeOstale operacije– Broj elemenataBroj elemenata– Prazan redPrazan red
Red Red ((queuequeue))
Definicija preko ATPDefinicija preko ATP
public interface IQueue
{
boolean isEmpty();
void Enqueue(int obj);
int Dequeue();
int Peek();
}
Lista Lista ((listlist))
Sekvenca elemenata istog tipaSekvenca elemenata istog tipa Element (čvor) u sebi čuva vrednost Element (čvor) u sebi čuva vrednost
(objekat)(objekat) OperacijeOperacije
– Ubacivanje Ubacivanje – IzbacivanjeIzbacivanje– Broj elemenataBroj elemenata– Brisanje svih elemenataBrisanje svih elemenata
Lista Lista ((listlist))
Definicija preko ATPDefinicija preko ATP
public interface ILinkedList{
void InsertBefore(int Data);void InsertAfter(int Data);int Remove();boolean MovePrevious();boolean MoveNext();void MoveTo(int index);void Clear();int Count();
}
ImplementacijaImplementacija
StSteek k ((stackstack))
Kao Kao statička strukturastatička struktura
Primer:Primer: 12 45 237
top
StSteek k ((stackstack))
UbacivanjeUbacivanje
prepre
nakonnakon
12 45 237
top
12 45 2 1737
top
StSteek k ((stackstack))
IzbacivanjeIzbacivanje
prepre
nakonnakon
12 45 237
top
top
12 4537 2
StSteek k ((stackstack))
public class ArrayStack implements IStack {
protected int[] data;protected int top;
public ArrayStack(int capacity){
data = new int[capacity];top = -1;
}
public boolean IsEmpty(){
return top == -1;}
nastavak na sledećoj strani
public void Push(int obj){
if(top < data.length - 1)data[++top] = obj;
}public int Pop(){
if(IsEmpty())return Integer.MIN_INT;
int Obj = data[top--];return Obj;
}public int Peek(){
if(IsEmpty())return Integer.MIN_INT;
return data[top];}
}
nastavak sa prethodne strane
Stak Stak ((stackstack))
Kao Kao dinamička strukturadinamička struktura
top45 2 37
Stak Stak ((stackstack))
UbacivanjeUbacivanje
prepre
nakonnakon
top2 37
top45 2 37
45
Stak Stak ((stackstack))
IzbacivanjeIzbacivanje
prepre
nakonnakon
top45 2 37
top2 37
Stak Stak ((stackstack))
import DataStructures.Interfaces.*;import DataStructures.LinearStructures.Lists.*;
public class LinkedListStack implements IStack{
protected LinkedList myList;public LinkedListStack(){
myList = new LinkedList();}
public boolean IsEmpty(){
return myList.IsEmpty();}
nastavak na sledećoj strani
public int Pop(){
return myList.Remove();}
public void Push(int obj){
myList.Add(obj);}
public int Peek(){
return myList.Peek();}
}
nastavak sa prethodne strane
top related