数据结构与算法分析--单链表
头结点:单链表前面附设的一个结点 头指针:从头指针开始,指向第一个结点的指针 首节点:第一个包含元素的结点 单链表的存储结构: typedef struct Node { ElemType data ; struct Node * next ; } Node ; typedef struct Node * LinkList ; //定义LinkList 单链表的读取实现: /*获得链表第i个数据 操作结果:用e返回L中第i个元素的值*/ Status GetElem ( LinkList L , int i , ElemType * e ){ int j ; LinkList p ; //声明一个结点p p = L -> next ; //让p指向链表的第一个结点 j = 1 ; //j为计数器 while ( p && j < i ){ //*p不为空或者计数器j没有等于i时,循环继续 p = p -> next ; //p指向下一个结点 ++ j ; } if (! p || j > i ) return ERROR ; //第i个元素不存在 * e = p -> data ; //取第i个元素的数据 return OK ; } 单链表的插入实现: // 两步实现 s -> next = p -> next ; p -> next = s ; /*初始条件:顺序表已经存在,