数据结构链表总结

来源:互联网 发布:安卓小说阅读器源码 编辑:程序博客网 时间:2024/05/01 11:35

1.链表数据类型

typedef struct LNODE{int data;struct LNODE *next;}LNODE,*LinkList;

指向结构体的指针。通过指针操作,来申请空间,插入数据,输出数据,释放空间。

2.创建链表

bool CreatList(LinkList &L){LNODE *P; int x;L = (LinkList)malloc(sizeof(LNODE));L->next = NULL;scanf("%d", &x);while (x!=0){P = (LNODE *)malloc(sizeof(LNODE));P->data = x;P->next = L->next;L->next = P;scanf("%d", &x);}return true;}
基本想法:写成布尔型,操作成功后返回true,函数的主要操作是申请空间,插入数据,头插法,

P->next = L->next;L->next = P;
每个数据的指针指向前一个数据的next,此时插入的数据在头部。此时的运算结果


也可以用尾插法,


while (x!=0){P = (LNODE *)malloc(sizeof(LNODE));P->data = x;r->next=P;s=P;scanf("%d", &x);}
此时的主要想法是有个指针r指向最后一个节点(也就是当前插入的元素),在尾部进行插入操作。此时的数据



3.





0 0
原创粉丝点击