You are on page 1of 3

Obiektowa lista jednokierunkowa

Zadanie 2.1
Wykorzystując koncepcję klas napisać program implementujący
nieuporządkowaną listę jednokierunkową, każdy węzeł której zawiera liczbę
całkowitą oraz wskaźnik na następny element.
Dla potrzeb programu wykorzystać i uzupełnić definicje dwóch klas: IntNode
oraz IntList (zdefiniowanych na kolejnych slajdach).
Zilustrować działanie zdefiniowanych klas w bloku main programu.

Programowanie obiektowe 1
Obiektowa lista jednokierunkowa

class IntNode {

public:
int info;
class IntNode *next;
IntNode(int el, IntNode *ptr=0) {
info=el;
next=ptr;
}
};

Programowanie obiektowe 2
Obiektowa lista jednokierunkowa

class IntList {
private:
IntNode *head, *tail; // wskaźniki na pierwszy i ostatni element listy
public:
IntList() { head=tail=0; }
~IntList();
int isEmpty() { return head == 0; } //sprawdza, czy lista jest pusta
void addToHead(int); //dodaje element na początek listy
void addToTail(int); // dodaje element na koniec listy
int deleteFromHead(); //usuwa i zwraca pierwszy element listy
int deleteFromTail(); //usuwa i zwraca ostatni element listy
void deleteNode(int); // usuwa element o podanej wartości
bool isInList(int); // sprawdza, czy element jest na liście
void printAll(); // wyświetla wszystkie elementy listy
};

Programowanie obiektowe 3

You might also like