拉链表算法,反转一个链表
翻转链表,举出单链表的头部节点head。 请反转链表,返回反转的链表。
例1 :输入: head=[ 1,2,3,4,5 ]
输出: [ 5,4,3,2,1 ]
例2 :输入: head=[ 1,2 ]
输出: [ 2,1 ]
例3 :输入: head=[]
输出: []
提示:链表中节点数的范围为[ 0,5000 ]
-5000=Node.val=5000
源代码实现/* * * definitionforsingly-linked list.* struct listnode { * intval; * ListNode *next; ** ListNode(:val )0),next ) nullptr ) ) listnode ) intx ) :val ) x ),next ) nullptr ) ) * ListNode ) inode ) //new链表结果while(head ) ) listnode*p=newlistnode ) head-val ); //new在一个节点上连接原来链表的开头指针p-next=curhead-next; curhead-next=p; //利用递归实现head=head-next } return cur head-next; };