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;
}
相关推荐
武藤一雄17 分钟前
C# 引用传递:深度解析 ref 与 out
windows·microsoft·c#·.net·.netcore
一叶落4381 小时前
LeetCode 50. Pow(x, n)(快速幂详解 | C语言实现)
c语言·算法·leetcode
皙然2 小时前
彻底吃透红黑树
数据结构·算法
qq_401700413 小时前
顺序、二分、插值、斐波那契查找算法
数据结构·算法·排序算法
x_xbx3 小时前
LeetCode:26. 删除有序数组中的重复项
数据结构·算法·leetcode
WolfGang0073213 小时前
代码随想录算法训练营 Day09 | 栈与队列 part01
数据结构
至为芯4 小时前
IP2075_34S至为芯支持C口快充的30W功率AC/DC芯片
c语言·开发语言
挠头猴子4 小时前
一个数组去重,两个数组找不同或相同
数据结构·算法
qiuyuyiyang5 小时前
MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置
windows·mysql·adb
桌面运维家5 小时前
Windows下VHD虚拟磁盘启动U盘制作指南
windows