之(n 2、单链表的数据类型定义: typedef struct node elemtype data; /*数据域,存放数据元素*/ struct node * next: /*指针域,指向后继元素* JNODE, * NODEPTR, LINKLIST *同时定义结点和指向结 点的指针* #define len sizeof(node)
链表之单链表(cont’d) 2、单链表的数据类型定义: typedef struct node { elemtype data; /*数据域,存放数据元素*/ struct node *next; /*指针域,指向后继元素*/ }NODE, *NODEPTR,* LINKLIST; /*同时定义结点和指向结 点的指针*/ #define LEN sizeof(NODE)
之单链表cOnt 3、单链表的基本操作创 (1)线性表的创建 时间复来度:Omn) LINKLIST createlinklisto ILINKLIST L; NODEPTR P, q;int i, n; elemtype e LF(NODEPTR)malloc(LEn); L→>next=NULL; q=L; scanf(%d", &n) for(i=l; i<=n; i++) i p=(NODEPTR)malloc len); getelem ( &e); p-data=e; q→next=p;q=p;}∥for 9-nextENULL return l:
链表之单链表(cont’d) 3、单链表的基本操作(创建) LINKLIST createlinklist() { LINKLIST L; NODEPTR p,q;int i,n;elemtype e; L=(NODEPTR)malloc(LEN); L→next=NULL; q=L; scanf("%d",&n); for(i=1;i<=n;i++) { p=(NODEPTR)malloc(LEN); getelem(&e); p→data=e; q→next=p;q=p; } //for q→next=NULL; return L; } (1) 线性表的创建 时间复杂度:O(n)