Posted By

ikoren on 11/11/12


Tagged

lista polje zaglavlja datoteka


Versions (?)

strukture podataka (Z1_datoteka zaglavlja- lista_polje.h)


 / Published in: C++
 

Datoteka zaglavlja lista_polje.h sadrzi implementacije liste pomocu polja.

  1. #include <string>
  2.  
  3. using namespace std;
  4.  
  5. struct kucni_ljubimci {
  6. int sifra;
  7. int cijena;
  8. string datum;
  9. string naziv;
  10. string vrsta;
  11. };
  12.  
  13. const int MAX_SIZE = 1000;
  14.  
  15. struct List {
  16. kucni_ljubimci polje[MAX_SIZE];
  17. int kursor;
  18. };
  19.  
  20. typedef List Lista;
  21. typedef int element;
  22.  
  23. const element error = -1;
  24.  
  25.  
  26. void InitL(Lista *lista) {
  27.  
  28. lista->kursor = 0;
  29. }
  30.  
  31. element FirstL(Lista *lista) {
  32. return 0;
  33. }
  34.  
  35. element NextL(element e, Lista *lista) {
  36. if (e == MAX_SIZE-1) {
  37. return error;
  38. }
  39. return e+1;
  40. }
  41.  
  42. element PreviousL(element e, Lista *lista) {
  43. return e-1;
  44. }
  45.  
  46. element EndL(Lista *lista) {
  47. return lista->kursor;
  48. }
  49.  
  50.  
  51. void DeleteL(element e, Lista *lista) {
  52. for (int i = e; i < lista->kursor; i++) {
  53. lista->polje[i] = lista->polje[i+1];
  54. }
  55. lista->kursor -= 1;
  56. }
  57.  
  58. void DeleteAll(Lista *lista) {
  59. lista->kursor = 0;
  60. }
  61.  
  62. kucni_ljubimci RetrieveL(element e, Lista *list) {
  63. return list->polje[e];
  64. }
  65.  
  66. element LocateL(kucni_ljubimci x, Lista *lista) {
  67. for (int i = 0; i < lista->kursor; i++) {
  68. if (lista->polje[i].sifra == x.sifra) {
  69. return i;
  70. }
  71. }
  72. return error;
  73. }
  74.  
  75. bool InsertL(kucni_ljubimci x, element e, Lista *lista) {
  76. if (e == MAX_SIZE) {
  77. return false;
  78. }
  79. for (int i = lista->kursor-1; i >= e; i--) {
  80. lista->polje[i+1] = lista->polje[i];
  81. }
  82. lista->polje[e] = x;
  83. lista->kursor += 1;
  84. return true;
  85. }

Report this snippet  

You need to login to post a comment.