C语言:单链表实现(二) 就地逆置,就地归并

本文详细讲解了如何使用C语言实现单链表的就地逆置和就地归并操作,通过实例代码展示了具体步骤,帮助读者深入理解链表数据结构及其操作技巧。
摘要由CSDN通过智能技术生成

#include<iostream>
#include<stdio.h>
#include<math.h>
#define LEN sizeof(struct Nodelist)
using namespace std;
typedef struct Nodelist
{
	int data;;
	struct Nodelist *next;
}Nodelist;
//函数声明
void Error(char *s);                      //错误处理函数
Nodelist *CreatNode(void);                 //后插法创建单链表
Nodelist *ReverseList(Nodelist *head);     //就地逆置函数
void MeryNode(Nodelist &l1, Nodelist &l2); //就地归并函数
void printNode(Nodelist L);                //输出函数
//函数定义
void Error(char *s)   //错误处理函数
{
	cout << s << endl;
	exit(1);
}
Nodelist *CreatNode(void)  //后插法创建单链表
{
	int  i, n;
	Nodelist *head, *p, *q;
	p = q = NULL;
	head = NULL;
	cout << "请输入您要建立的链表长度:";
	cin >> n;
	cout << "请输入您要输入的数据:" << endl;;
	for (i = 0; i<n; ++i)
	{

		p = (Nodelist *)malloc(LEN);
		cin >> p->data;
		if (he
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值