亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

leetcode如何分隔鏈表

發布時間:2021-12-15 14:43:18 來源:億速云 閱讀:131 作者:iii 欄目:大數據

本篇內容主要講解“leetcode如何分隔鏈表”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“leetcode如何分隔鏈表”吧!

一、題目內容

給你一個鏈表和一個特定值 x ,請你對鏈表進行分隔,使得所有小于 x 的節點都出現在大于或等于 x 的節點之前。

你應當保留兩個分區中每個節點的初始相對位置。

示例:

輸入:head = 1->4->3->2->5->2, x = 3
輸出:1->2->2->4->3->5

二、解題思路

創建兩個鏈表,一個存放小于x的,一個存放大于x的,順序不動,最后將兩個鏈表進行拼接即可。

三、代碼

# Definition for singly-linked list.
class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None

    def __repr__(self):
        return str(self.val)

class Solution:
    def partition(self, head: ListNode, x: int) -> ListNode:
        if not head:
            return head
        head1 = ListNode(0)
        head2 = ListNode(0)
        cur1 = head1
        cur2 = head2
        while head:
            if head.val < x:
                cur1.next = head
                head = head.next
                cur1 = cur1.next
                cur1.next = None
            else:
                cur2.next = head
                head = head.next
                cur2 = cur2.next
                cur2.next = None
        cur1.next = head2.next
        return head1.next


if __name__ == '__main__':
    s = Solution()
    head_list = [1, 4, 3, 2, 5, 2]
    head = ListNode(head_list[0])
    cur = head
    for i in range(1, len(head_list)):
        cur.next = ListNode(head_list[i])
        cur = cur.next
    x = 3
    ans = s.partition(head, x)
    print(ans)

到此,相信大家對“leetcode如何分隔鏈表”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陈巴尔虎旗| 霍邱县| 错那县| 将乐县| 武宣县| 余江县| 昌邑市| 晴隆县| 武定县| 社旗县| 大城县| 洱源县| 大洼县| 康马县| 景谷| 樟树市| 太保市| 枞阳县| 礼泉县| 怀安县| 日喀则市| 河北区| 滦平县| 湖州市| 阳西县| 庆城县| 嫩江县| 漯河市| 广丰县| 丰镇市| 定西市| 淅川县| 汝州市| 绥化市| 延吉市| 二连浩特市| 内乡县| 承德县| 临江市| 石家庄市| 台东县|