例题2-6 :
将两个用尾指针表示的循环单链表合并成一个用尾指针表示的循环单链表合并成一个用尾指针表示的循环单链表
这个模板出了一点问题,主要问题在于,我是直接套用了之前的做法,其实循环单链表,不用头指针,只用尾指针。
但是我可以历遍来找到这个尾指针的位置。
我用了两种方法,一种是原地操作,另一种是异地操作。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iostream>
#define LElemType int
#define inf 0x3f3f3f3f
using namespace std;
typedef struct CLNode{
LElemType data;
struct CLNode * next;
CLNode(LElemType Data=inf,CLNode *Next=NULL){
data=Data;
next=Next;
}
}CLNode , *CLinkList ;
void InitCLinkList(CLinkList &L){
L=new CLNode;
L->next=L;
}
void CreateCLinkList_Tail(CLinkList &L,int n=0){
L=new CLNode;
CLinkList Pre=L,p;
LElemType Data;
for(int i=1;i<=n;i++){
printf("请输入第%d个data值:\n",i);
cin>>Data;