美文网首页首页投稿(暂停使用,暂停投稿)每周500字
C语言的链表(篇章之一:基本知识与静态链表)

C语言的链表(篇章之一:基本知识与静态链表)

作者: 遮天的龙 | 来源:发表于2016-06-08 21:51 被阅读261次

    一、【定义】:

    链表是内存当作零碎的内存的效组织,当内存足够但是内存中没我们需要的大小连续的内存块的时候,可以使用链表来利用内存的零碎的内存,代替连续内存块。分:静态链表和动态链表,主要还是研究动态链表。

    二、【与数组的比较】:

    具体列个表吧:

    数组与链表的比较

    三、【链表的结构】:

    链表元素常称为链表结点,每一个结点包含两个域:数据域和指针域。
    

    数据域保存数据,指针域连接该结点到下一个结点,结点数据是一种复合类型,每一个结点占用一块存储单元,当要在链表中增加一个结点时,可动态地为该结点分配一个存储单元;当要在链表中删除一个结点时,也可释放该结点的存储单元。

    链表的结构

    四、【静态链表】:

    #include <stdio.h>
    typedef struct node
    {
      int data;
      struct node * next;
    }Node;
    int main(void)  
    {
      Node a;
      Node b;  
      Node c;
      a.data = 1;
      b.data = 2;
      c.data = 3;
      a.next = &b;
      b.next = &c;
      c.next = NULL;
      Node * head = &a;  
      while(head != NULL)
      {
        printf("data = %d\n",head->data);
        head = head->next;
      }
    return 0;
    }
    
    
    
    静态链表的用处不大,像上面的例子还不如直接输入。
    (下章讲动态链表)

    相关文章

      网友评论

        本文标题:C语言的链表(篇章之一:基本知识与静态链表)

        本文链接:https://www.haomeiwen.com/subject/dcbjdttx.html