• 数据结构=。= 链表


    为了工作,开始漫漫路

    链表结构

      数据部分:数据

      地址部分:下一个结点地址

    链表结构

    typedef struct  Data //Data数据结构
    {
        char key[10]; //关键字
        char name[20]; //
        int age;      
    }
    
    typedef struct Node //结点结构
    {
        Data nodeData;
        struct Node * next;
    }ListNode;

    链表操作

    链表操作中涉及到“增”结点的操作就要先分配空间

    追加尾结点

    步骤:

    1. 分配空间
    2. 检查是否为头指针(head),是head,head=node(插入的节点);不是head,遍历链表,至末尾(headtemp -> next ==null),headtemp ->next = node;

    代码:

    ListNode *addEnd(ListNode *head,Data nodedata)
    {
        ListNode *node,*htemp;
        if(!(node = (ListNode*)malloc(sizeof(ListNode))))
        {
            printf("申请内存失败!
    ");
            return NULL;
        }
        else
        {
            node->nodeData = nodeData;
            node->next = NULL;
            if(head == NULL)
            {
                head = node;
                return head;
            }
            htemp = head;
            while(htemp->next != NULL)
            {
                htemp = htemp->next;
            }
            htemp->next = node;
            return head;
        }
    
    }

    插入头结点

    步骤和上基本相似,直接说关键操作

    node->nodeData = nodeData;
    node->next = head;
    head = node;
  • 相关阅读:
    @property
    UIViewController卸载过程(ios6.0以后)
    UIViewController卸载过程(ios6.0之前)
    UIViewController启动过程
    意淫原理,还是很有意思的
    协议
    多线程理解
    内存溢出与内存泄露
    jquery:实例方法
    计划,模型
  • 原文地址:https://www.cnblogs.com/sn944/p/5478222.html
Copyright © 2020-2023  润新知