递增的整数序列链表的插入

cpp 复制代码
List Insert( List L, ElementType X )
{
    PtrToNode p;
    p=L;
    while(p->Next)
    {
        if(p->Data< X && X< p->Next -> Data){
            break;
        }
        if(X<=p->Data){
            break;
        }
        p=p->Next;
    }
    PtrToNode q;
    q=(List)malloc(sizeof(List));
    q->Data=X;
    q->Next=p->Next;
    p->Next=q;
    return L;
}

1.p=L而不是p=L->Next ,因为并不能确定L-->Next存在不存在。

2.注意返回 return L;

相关推荐
lojox2 天前
C++ 手写 STL list(双向循环链表)原理剖析与实现
c++·链表·list
BeiGuTing_code3 天前
C链表基础(二)有视频模拟!!!
c语言·链表·音视频
aqiu1111114 天前
CodeTop按顺序刷题0003:LeetCode 206. 反转链表(迭代法图文详解与动态演示)
算法·leetcode·链表
longlongzihan7 天前
LeetCode 25. K 个一组翻转链表 (迭代+分组反转法)
算法·leetcode·链表
longlongzihan8 天前
LeetCode 24.两两交换链表中的节点:虚拟头结点与指针
算法·leetcode·链表
longlongzihan8 天前
从LeetCode 19. 删除链表的倒数第 N 个结点深入理解“哨兵节点”
c++·算法·leetcode·链表
xiangyun618 天前
C++ list 模拟实现(一):手撕双向链表,从节点到迭代器
数据库·c++·算法·链表·stl·list
0+1119 天前
算法 --链表
数据结构·算法·leetcode·链表
longlongzihan9 天前
链表找环:Floyd 判圈算法(LeetCode 141 & 142 )
c++·算法·leetcode·链表
夏幻灵10 天前
LeetCode 21:合并两个有序链表——双指针与哑节点详解
算法·leetcode·链表