Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

链表

介绍

  1. 链表能合理利用内存内的非连续空间
  2. 链表都有data数据域和next指针域,data数据域可以存放该节点对应的任何数据类型如char,int等。next指针域是指向链表中下一个节点的引用指针
    图片
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    struct LNode { 
    int data;
    struct LNode * next;
    struct LNode *head, *middle, *last;
    head - (LNode *)malloc(sizeof(struct LNode));middle = (LNode *)malloc(sizeof(struct LNode));last
    = (LNode *)malloc(sizeof(struct LNode));
    head->data = 10;
    middle->data = 20;
    last->data = 30;
    head->next = middle;middle->next = last;last->next=NULL;

链表和数组的区别

数组 元素始终存在连续的内存位置,在运行时不能随意改变大小。访问元素可以直接访问。增删要动大量数据。


链表 在存储时会配备一个指针,用于指向其后续元素,这样可以通过指针将所有元素连接起来,指针可以指向下一个空间,做到随意增删。访问元素必须历遍整个链表。增删数据只需更改指针

评论