题目:
定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点
链表结构
typedef struct Node
{
int val;
struct Node* next;
}pNode;
示例:
核心代码:
while(curNode)
{
pNode* nextNode = curNode->next;//先保存当前结点的下一个结点地址
curNode->next = preNode;//修改当前结点的next指向前一个结点
preNode = curNode;//前结点指针移动
curNode = nextNode;//当前结点指针
}
代码实现:
#include<iostream>
using namespace std;
typedef struct Node
{
int val;
struct Node* next;
}pNode;
int k;
pNode* InputList(void)//输入并创建链表
{
int n, val;
pNode* pHead = new pNode();
pNode* cur = pHead;
cout << "请输入链表长度n" << endl;
cin >> n ;
cout <&