Advertisement
ErliPan

Untitled

Dec 23rd, 2020
568
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.74 KB | None | 0 0
  1. void array_to_list(int *V, int N, int M, struct list **ptrptr)
  2. {
  3.     int i;
  4.     struct list **tmp_ptrptr;
  5.     init(ptrptr);
  6.     tmp_ptrptr = ptrptr;
  7.     // copia primi M elementi array
  8.     for (i = 0; i < M; i++)
  9.     {
  10.         // non usa suf_insert che richiede sempre scansione dalla testa
  11.         // Invece tiene sempre puntatore alla coda in modo da inserire in tempo
  12.         // costante ad ogni passo
  13.         pre_insert(ptrptr, V[i]);
  14.         ptrptr = &((*ptrptr)->next_ptr);
  15.     }
  16.     // riporta puntatore all’inizio della lista
  17.     ptrptr = tmp_ptrptr;
  18.     // copia elementi rimanenti array
  19.     for (i = M; i < N; i++)
  20.     {
  21.         pre_insert(ptrptr, V[i]);
  22.         ptrptr = &((*ptrptr)->next_ptr);
  23.         if ((*ptrptr) != NULL)
  24.             // salta un elemento nella lista
  25.             ptrptr = &((*ptrptr)->next_ptr);
  26.     }
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement