Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class ArrayList{
  6. private:
  7. int *elems; //tablica
  8. int first_elem; //pozycja pierwszego elementu
  9. int last_elem; //pozycja ostatniego elementu
  10. int list_capacity; //maksymalny rozmiar tablicy
  11. int list_size; //liczba elementów w tablicy
  12.  
  13. public:
  14. ArrayList(int c) {
  15. this->elems = new int[c];
  16. this->list_capacity = c;
  17. this->first_elem = NULL;
  18. this->last_elem = -1;
  19. };
  20.  
  21. bool empty() {
  22. if(list_size == 0) return true; else return false;
  23. };
  24.  
  25. bool full() {
  26. if(list_size == list_capacity) return true; else return false;
  27. };
  28.  
  29. int size() {
  30. return list_size;
  31. };
  32.  
  33. int capacity() {
  34. return list_capacity;
  35. };
  36.  
  37. int first() {
  38. return elems[0];
  39. };
  40.  
  41. int last() {
  42. return elems[list_size - 1];
  43. };
  44.  
  45. int next(int p); //zwraca pozycję elementu następnego za p
  46. int prev(int p); //zwraca pozycję elementu poprzedzającego p
  47.  
  48. int retrieve(int p) {
  49. return elems[p];
  50. };
  51.  
  52. int locate(int x) {
  53. int i = 0;
  54. while(i < list_size) {
  55. if(elems[i] == x) {
  56. return i;
  57. }
  58. i++;
  59. }
  60. return -1;
  61. };
  62.  
  63. void insert(int p, int x) {
  64. if(!full()) {
  65. if(elems[p] != NULL) {
  66. elems[p] = x;
  67. } else {
  68. elems[p+1] = elems[p];
  69. elems[p] = x;
  70. }
  71. }
  72. }; //wstawia na pozycję p element x
  73.  
  74. void append(int x) {
  75. if(!full()) {
  76. elems[list_size] = x;
  77. list_size++;
  78. }
  79. };
  80.  
  81. void del(int p) {
  82. elems[p] = NULL;
  83. list_size--;
  84. };
  85.  
  86. void clear() {
  87.  
  88. }; //usuwa całą listę
  89.  
  90. friend ostream& operator<<(ostream& out, ArrayList& l); //wypisuje elementy listy
  91. };
  92.  
  93. int main()
  94. {
  95. ArrayList list = new ArrayList(10);
  96. list.append(5);
  97. list.append(5);
  98.  
  99.  
  100.  
  101. return 0;
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement