#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
C语言:单链表实现(二) 就地逆置,就地归并
最新推荐文章于 2024-04-15 23:01:14 发布
本文详细讲解了如何使用C语言实现单链表的就地逆置和就地归并操作,通过实例代码展示了具体步骤,帮助读者深入理解链表数据结构及其操作技巧。
摘要由CSDN通过智能技术生成