函数题:逆置链表
要求实现函数,将带头结点的单链表就地(不增加额外结点)逆置。
### 函数接口定义:
c++
void Reverse(Node* head);
其中参数 head是待逆置的链表的头指针(指向头结点)。
### 裁判测试程序样例:
c++
#include<iostream>
using namespace std;
struct Node {
int data; // 数据域
Node* next; // 指针域
};
Node *Create(int n);
void Traverse(Node* head)
void Reverse(Node* head);
int main() {
int n;
while(cin>>n) {
Node *h=Create(n);
Reverse(h);
Traverse(h);
}
return 0;
}
### 输入样例:
in
5 5 4 3 2 1
4 1 2 3 4
### 输出样例:
out
1 2 3 4 5
4 3 2 1
答案:若无答案欢迎评论
### 函数接口定义:
c++
void Reverse(Node* head);
其中参数 head是待逆置的链表的头指针(指向头结点)。
### 裁判测试程序样例:
c++
#include<iostream>
using namespace std;
struct Node {
int data; // 数据域
Node* next; // 指针域
};
Node *Create(int n);
void Traverse(Node* head)
void Reverse(Node* head);
int main() {
int n;
while(cin>>n) {
Node *h=Create(n);
Reverse(h);
Traverse(h);
}
return 0;
}
### 输入样例:
in
5 5 4 3 2 1
4 1 2 3 4
### 输出样例:
out
1 2 3 4 5
4 3 2 1
答案:若无答案欢迎评论