单链表逆序,在原链表数据的基础上进行调整
注意:链表功能需要大家自己添加,本题只做调用
struct ListNode* ReverseList(struct ListNode* pHead ) {
// write code here
if(NULL == pHead) return NULL; // 没有节点时
if(NULL == pHead->next) return pHead; // 只有一个节点时
struct ListNode* t = NULL;
struct ListNode* p = NULL;
t = pHead->next;
p = pHead;
p->next = NULL;
while(NULL != t)
{
p = t;
t = t->next;
p->next = pHead;
pHead = p;
}
return p;
}