本文主要是介绍剑指Offer15——反转链表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
/*反转链表* * 输入一个链表,反转链表后,输出新链表的表头。* * * * * */class ListNode {int val;ListNode next = null;ListNode(int val) {this.val = val;}
}
class ListNode {int val;ListNode next = null;ListNode(int val) {this.val = val;}
}
public class Offer15 {public ListNode ReverseList(ListNode head) {//如果链表为空或者只有一个节点,那就直接返回自己if(head==null || head.next==null) {return head;}ListNode p; ListNode q;ListNode r;p=head; //p指向头节点q=head.next;//q指向头节点的下一个节点head.next=null; //断开连接,旧的头指针是新的尾指针while(q!=null) {r=q.next;q.next=p;p=q;q=r;}head=p;return head;}
}
这篇关于剑指Offer15——反转链表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!