[資料結構]順序單鏈表插入
阿新 • • 發佈:2019-01-10
一,單鏈表插入操作
typedef struct NODE { struct NODE *link; int value; }Node; #include <stdlib.h> #include <stdio.h> #define FALSE 0 #define TRUE 1 int s_insert(Node **rootp,int new_value) //root是一個指向Node的指標,所以指標root的指標型別是Node** { Node *current; Node *new; Node *previous; current = *rootp; previous = NULL; while(current != NULL && current->value < new_value) { previous = current; current = current->link; } new = (Node*)malloc(sizeof(Node)); if(new == NULL) { return FALSE; } new->value = new_value; new->link = current; if(previous == NULL) { *rootp = new; } else { previous->link = new; } return TRUE; }