leetcode 86. 分隔链表(链表)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 86. 分隔链表(链表)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
給你一個鏈表和一個特定值 x ,請你對鏈表進(jìn)行分隔,使得所有小于 x 的節(jié)點都出現(xiàn)在大于或等于 x 的節(jié)點之前。
你應(yīng)當(dāng)保留兩個分區(qū)中每個節(jié)點的初始相對位置。
示例:
輸入:head = 1->4->3->2->5->2, x = 3
輸出:1->2->2->4->3->5
代碼
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) { val = x; }* }*/ class Solution {public ListNode partition(ListNode head, int x) {ListNode left=new ListNode(0),l=left;//比x小的節(jié)點放置的鏈表ListNode right=new ListNode(0),r=right;//大于等于x的節(jié)點放置的鏈表while (head!=null){ListNode next=head.next;if(head.val<x){l.next=head;l=head;}else {r.next=head;r=head;}head.next=null;head=next;}l.next=right.next;//合并兩個鏈表return left.next;} }總結(jié)
以上是生活随笔為你收集整理的leetcode 86. 分隔链表(链表)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 梦到和婆婆妈吵架预示着什么
- 下一篇: leetcode 509. 斐波那契数(