国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

移除鏈表倒數(shù)第n個元素

yhaolpz / 1211人閱讀

摘要:移除鏈表倒數(shù)第個元素給定一個鏈表,移除倒數(shù)第個元素,返回鏈表頭部。

移除鏈表倒數(shù)第n個元素 Remove Nth Node From End of List

給定一個鏈表,移除倒數(shù)第n個元素,返回鏈表頭部。

Given a linked list, remove the nth node from the end of list and return its head.

Note:
Given n will always be valid.
Try to do this in one pass.

example 1

Given linked list: 1->2->3->4->5, and n = 2.

After removing the second node from the end, the linked list becomes 1->2->3->5.

example 2

Given linked list: 1, and n = 1.
output: None

example 3

Given linked list: 1->2->3, and n = 3.
output: 2->3
思路

兩個指針,fastslowfast指向slow之后n個位置,同步移動fastslow,當fast.next為null的時候,slow.next即為要移除的那個元素,只需要slow.next = slow.next.next即可,時間復雜度O(n)

注意考慮n為鏈表長度的情況,即移除首個元素

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

class Solution(object):
    def removeNthFromEnd(self, head, n):
        """
        :type head: ListNode
        :type n: int
        :rtype: ListNode
        """
        a = b = head
        for i in range(n):
            b = b.next
        if not b:
            return head.next
        while b.next:
            a = a.next
            b = b.next
        a.next = a.next.next
        return head

本題以及其它leetcode題目代碼github地址: github地址

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/38664.html

相關(guān)文章

  • LeetCode 203:移除鏈表元素 Remove LinkedList Elements

    摘要:刪除鏈表中等于給定值的所有節(jié)點。鏈表的刪除操作是直接將刪除節(jié)點的前一個節(jié)點指向刪除節(jié)點的后一個節(jié)點即可。這就無需考慮頭節(jié)點是否為空是否為待刪除節(jié)點。 刪除鏈表中等于給定值 val 的所有節(jié)點。 Remove all elements from a linked list of integers that have value val. 示例: 輸入: 1->2->6->3->4->5-...

    hzc 評論0 收藏0
  • LeetCode 203:移除鏈表元素 Remove LinkedList Elements

    摘要:刪除鏈表中等于給定值的所有節(jié)點。鏈表的刪除操作是直接將刪除節(jié)點的前一個節(jié)點指向刪除節(jié)點的后一個節(jié)點即可。這就無需考慮頭節(jié)點是否為空是否為待刪除節(jié)點。 刪除鏈表中等于給定值 val 的所有節(jié)點。 Remove all elements from a linked list of integers that have value val. 示例: 輸入: 1->2->6->3->4->5-...

    makeFoxPlay 評論0 收藏0
  • LeetCode【203】:移除鏈表元素

    摘要:題目描述刪除鏈表中等于給定值的所有節(jié)點。示例輸入輸出非遞歸解法思路遍歷鏈表,找出每個待刪除節(jié)點的前一個節(jié)點。特殊情況第一個節(jié)點就是待刪除節(jié)點時,要單獨操作。注意點當輸入為時,按上面的思路刪除第一個節(jié)點,剩下的鏈表的頭節(jié)點又是待刪除節(jié)點。 題目描述 刪除鏈表中等于給定值 val 的所有節(jié)點。 示例 輸入: 1->2->6->3->4->5->6, val = 6輸出: 1->2->3->...

    wwolf 評論0 收藏0
  • 準備下次編程面試前你應該知道的數(shù)據(jù)結(jié)構(gòu)

    摘要:以下內(nèi)容編譯自他的這篇準備下次編程面試前你應該知道的數(shù)據(jù)結(jié)構(gòu)瑞典計算機科學家在年寫了一本書,叫作算法數(shù)據(jù)結(jié)構(gòu)程序。 國外 IT 教育學院 Educative.io 創(chuàng)始人 Fahim ul Haq 寫過一篇過萬贊的文章《The top data structures you should know for your next coding interview》,總結(jié)了程序員面試中需要掌...

    desdik 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<