Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class ArrayList{
- private:
- int *elems; //tablica
- int first_elem; //pozycja pierwszego elementu
- int last_elem; //pozycja ostatniego elementu
- int list_capacity; //maksymalny rozmiar tablicy
- int list_size; //liczba elementów w tablicy
- public:
- ArrayList(int c) {
- this->elems = new int[c];
- this->list_capacity = c;
- this->first_elem = NULL;
- this->last_elem = -1;
- };
- bool empty() {
- if(list_size == 0) return true; else return false;
- };
- bool full() {
- if(list_size == list_capacity) return true; else return false;
- };
- int size() {
- return list_size;
- };
- int capacity() {
- return list_capacity;
- };
- int first() {
- return elems[0];
- };
- int last() {
- return elems[list_size - 1];
- };
- int next(int p); //zwraca pozycję elementu następnego za p
- int prev(int p); //zwraca pozycję elementu poprzedzającego p
- int retrieve(int p) {
- return elems[p];
- };
- int locate(int x) {
- int i = 0;
- while(i < list_size) {
- if(elems[i] == x) {
- return i;
- }
- i++;
- }
- return -1;
- };
- void insert(int p, int x) {
- if(!full()) {
- if(elems[p] != NULL) {
- elems[p] = x;
- } else {
- elems[p+1] = elems[p];
- elems[p] = x;
- }
- }
- }; //wstawia na pozycję p element x
- void append(int x) {
- if(!full()) {
- elems[list_size] = x;
- list_size++;
- }
- };
- void del(int p) {
- elems[p] = NULL;
- list_size--;
- };
- void clear() {
- }; //usuwa całą listę
- friend ostream& operator<<(ostream& out, ArrayList& l); //wypisuje elementy listy
- };
- int main()
- {
- ArrayList list = new ArrayList(10);
- list.append(5);
- list.append(5);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement