日币对韩币汇率换算:c语言题目。急!

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/28 08:28:19
实现一个函数,接受一个链表的头指针,复制该链表,并返回复制的链表的头指针。

谢谢!

main函数自己写
------------------------
设链表节点结构如下:

typedef struct node
{int data;
struct node * next;
}

复制链表的自定义函数
node * copy(node * head){

/**copyhead表示返回的新的链表的头结点*/
node *copyhead,*p,*r,q;

/**创建带有头指针的新的链表,copyhead是头结点*/
copyhead->next=null;
r=copyhead;
p=head;

/**取原链表第一个结点*/
p=p->next;

/**当还未达到原链表的最后一个节点,则循环处理*/
while(p->next!=null)
{
/**复制数据*/
q->data=p->data;

/**将q节点插入新链表*/
q->next=r->next;
r->next=q;

/**取下一个节点*/
p=p->next;
r=r->next;
}

return copyhead;
}

希望对你有帮助~~~

设链表的结点如下:
struct NODE{
INFO info;
NODE* next;//指向下一个结点,如果为空则为最后一个结点
} node;

NODE* CopyChain(NODE* head){
if(head==NULL){
return NULL;//链表为空
}
NODE* newHead;
NODE* temp=new node;
newHead = temp;
for(;;){
temp->info = head->info;
temp->next = head->next;
head=head->next;
if(head==NULL){
return newHead;
}
temp = new node;
}
}