6-3 递增的整数序列链表的插入 分数 5

cpp 复制代码
List Insert(List L, ElementType X) 
{
	//创建结点
	List node = (List)malloc(sizeof(List));
	node->Data = X;
	node->Next = NULL;

	List head = L->Next; //定位real头指针

	//空链表 直接插入
	if (head == NULL) 
	{
		L->Next = node;
		node->Next = head;

		return L;
	}

	//插入数据比第一个数据还小 直接插入
	if (head->Data >= X) 
	{
		L->Next = node;
		node->Next = head;
		return L;
	}

	List prv = NULL;
	while (head && head->Data < X)
	{
		prv = head;
		head = head->Next;
	}
	//循环结束条件一:head走到空都没有找到合适位置 尾插
	if (head == NULL)
	{
		prv->Next = node;
	}
	循环结束条件二:找到合适位置
	else 
	{
		prv->Next = node;//中
		node->Next = head;
	}
	return L;
}
相关推荐
轴测君2 小时前
3 无重复字符的最长子串
数据结构·算法·leetcode
小十一再加一2 小时前
【C初阶】动态内存管理
c语言
lifallen12 小时前
Hadoop MapReduce 任务/输入数据 分片 InputSplit 解析
大数据·数据结构·hadoop·分布式·算法
熙xi.12 小时前
数据结构 -- 哈希表和内核链表
数据结构·算法·散列表
Univin14 小时前
8.25作业
数据结构·windows
徐子元竟然被占了!!14 小时前
Windows Server 2019 DateCenter搭建 FTP 服务器
运维·服务器·windows
winkel_wang14 小时前
身份管理与安全 (Protect identities)
windows·安全
正经教主15 小时前
[特殊字符]Windows 资源监视器使用指南:查端口以后不用敲命令了
windows
胡萝卜3.016 小时前
数据结构初阶:详解单链表(一)
数据结构·笔记·学习·单链表