标签:style blog http color strong 数据 2014 div sp
线性表的存储结构有两种:顺序存储和链式存储
顺序存储:读取数据的时间复杂度为O(1),其实就是数组,但是插入,删除的复杂度略大
链式存储:•用一组任意的存储单元存储线性表的数据元素,这组存储单元可以存在内存中未被占用的任意位置。
typedef struct Node { ElemType data; // 数据域 struct Node* Next; // 指针域 } Node; typedef struct Node* LinkList;
GetElem( LinkList L, int i, ElemType *e ):读取链表中的元素
Status GetElem( LinkList L, int i, ElemType *e ) { LinkList p; int j = 1; p = L -> next; if ( !p || i < 1 ) { return Error } while( p && j < i) { p = p -> next; ++j; } if ( !p ) { return Error } *e = p->data return *e }
插入和删除的图示:
InsertElem( LinkList L, int i, ElemType *e )
Status InsertElem( LinkList L, int i, ElemType *e ) { LinkList p,s int j = 1 p = L -> next if ( !p || i < 1 ) { return Error } while( p && j < i) { p = p -> next; ++j; } if ( !p ) { return Error } s = (LinkList)malloc(sizeof(Node)); s -> data = e s -> next = p -> next; p -> next = s; return OK }
DeleteElem( LinkList L, int i, ElemType *e)
Status DeleteElem( LinkList L, int i, ElemType *e) { LinkList p; int j = 1; p = L -> next ; if ( !p || i < 1 ) { return Error } while( p && j < i) { p = p -> next; ++j; } if ( !p ) { return Error } q = p -> next p -> next = q -> next e = p -> data free(q) return OK }
标签:style blog http color strong 数据 2014 div sp
原文地址:http://www.cnblogs.com/shixiaomiao/p/3986603.html