linked list
hitung jumlah simpul :
Q = FIRST; Jum = 1; while (Q != LAST) { Q = Q->LINK; Jum = Jum + 1; } printf("%i", JUM);
atau
Q = FIRST; Jum = 1; while (Q->LINK != NULL) { Q = Q->LINK; Jum = Jum + 1; } printf("%i", JUM);
atau
Q = FIRST; Jum = 0; while (Q != NULL) { Jum = Jum + 1; Q = Q->LINK; } printf("%i", JUM);
membuat sebuah simpul yang ditunjuk pointer p :
scanf ("%i", &x); p = (simpul*)malloc(sizeof(simpul)); p->info = x;
menjadikan sebuah simpul (p) menjadi simpul awal :
first = p; last = p; p->link = null;
insert kanan :
last->link = p; last = p; p->link = null;
insert kiri :
p->info = x; p->;link = first; first = p;
insert tengah :
// dengan asumsi pointer q sudah ada di posisi insert tengah p->link = q->link q->link = p;
delete kiri :
q = first; first = q->link; free(q);
atau
q = first->link; free(first); first(q);
delete kanan :
free(last); last = q; last->link = null;
atau
last = q; free(last->link); last->link = null;
delete tengah :
r = q->link->link; free(q->link); q->link = r;
atau
// dengan asumsi pointer q sudah ada di posisi delete tengah r = q->link; q->link = r->link; free(r);
arahkan pointer agar menunjuk simpul n :
Q = FIRST; for( I=1; I< =n; I++) { Q = Q->LINK; }
arahkan pointer agar menunjuk 2 simpul dari kanan :
Q = FIRST; while(Q->LINK!=LAST) { Q = Q->LINK; }
Related posts:
