美文网首页
单链表的插入

单链表的插入

作者: 南风_001 | 来源:发表于2019-08-28 10:24 被阅读0次

单链表在第i个数据插入结点的思路

  • 声明一指针p指向链表的头结点,初始化j从1开始。
  • 当就j<1时,遍历链表,让p的指针向后移动,不断指向下一结点,j++
  • 若链表的末尾p为空,那么说明第i个结点不存在,返回error
  • 若查找成功,在系统中生成一个空结点s
  • 将数据元素e赋值给s->data
  • 单链表的插入标准语句s->next=p->next, p->next=s
  • 返回成功

代码如下:

// 初始条件:顺序线性表L已存在,1<=i<ListLength(L)。
// 操作结果是:在L中第i个结点的位置之前插入新的数据元素e,L的长度+1
Status ListInset (LinkList *L, int i, ElemType e) {
    int j;
    LinkList p,s;
    p = *L;
    j = 1;
    // 寻找第i-i个节点
    while (p && j < i) {
        p = p->next;
        ++j;
    }
    // 如果第i个接点不存在
    if (!p || j > i)
    {
     return ERROR;
    }
    s = (LinkList)malloc(sizeof(Node));// 生成新的结点
    s->data = e;// 新结点的数据赋值
    s->next = p->next;// 将p的后继节点赋值给s的后继结点
    p->next = s;//把s的赋值给p的后继
    return ok;

}

相关文章

  • 单链表的操作

    单链表代码定义 单链表的操作 初始化单链表 插入结点 注: L为插入的单链表,node为将要插入的结点 前插法 尾...

  • 链表基本操作

    1、删除单链表节点 2、插入单链表结点 单链表具体实现

  • 线性表元素插入和删除

    单链表(链式存储结构)插入 单链表(链式存储结构)删除 有头结点的单链表在开始结点前插入元素等同在头结点后插入元素...

  • 19.数据结构-线性表-2.单链表增加和删除

    0>>>初始化和创建 1>>>单链表的插入和删除。 1.单链表的插入 2.单链表的删除 2>>>单链表的整表创建和...

  • 单链表的插入

    单链表的插入

  • 线性表的链式存储----单链表

    单链表 建立单链表 头插法 尾插法 插入结点 表头插入 表尾插入 表内插入 指定位置插入(如下) 删除结点

  • Python--单向链表

    单链表python实现 节点实现 单链表操作 头部插入 尾部添加 在index位置插入 删除结点

  • JavaScript数据结构2——单链表

    以下的代码包括了以下几部分 单链表初始化 单链表的插入 单链表的删除 单链表的创建(头插法) 单链表的创建(尾插法...

  • 数据结构之链表

    链表分为单链表,双向链表和循环链表 链表的时间复杂度 插入 O(n) 删除 O(1) 随机访问 O(n) 单双链表...

  • 线性表之单链表实现

    线性表之单链表实现 实现单链表的初始化、插入、删除等基本运算 实现单链表的输入、输出运算 实现单链表的逆置、归并、...

网友评论

      本文标题:单链表的插入

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