国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

從零開(kāi)始的力扣刷題記錄-第四十八天

這篇具有很好參考價(jià)值的文章主要介紹了從零開(kāi)始的力扣刷題記錄-第四十八天。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

2460. 對(duì)數(shù)組執(zhí)行操作-簡(jiǎn)單

給你一個(gè)下標(biāo)從 0 開(kāi)始的數(shù)組 nums ,數(shù)組大小為 n ,且由 非負(fù) 整數(shù)組成。
你需要對(duì)數(shù)組執(zhí)行 n - 1 步操作,其中第 i 步操作(從 0 開(kāi)始計(jì)數(shù))要求對(duì) nums 中第 i 個(gè)元素執(zhí)行下述指令:
如果 nums[i] == nums[i + 1] ,則 nums[i] 的值變成原來(lái)的 2 倍,nums[i + 1] 的值變成 0 。否則,跳過(guò)這步操作。
在執(zhí)行完 全部 操作后,將所有 0 移動(dòng) 到數(shù)組的 末尾 。
例如,數(shù)組 [1,0,2,0,0,1] 將所有 0 移動(dòng)到末尾后變?yōu)?[1,2,1,0,0,0] 。
返回結(jié)果數(shù)組。
注意 操作應(yīng)當(dāng) 依次有序 執(zhí)行,而不是一次性全部執(zhí)行。

題解:
跟著題目描述一步一步做就可以了,沒(méi)難度

代碼(Go):

func applyOperations(nums []int) []int {
    for i := 0;i < len(nums) - 1;i++{
        if nums[i] == nums[i + 1]{
            nums[i] = nums[i] * 2
            nums[i + 1] = 0
        }
    }
    p := 0
    for i := 0;i < len(nums);i++{
        if nums[i] != 0{
            temp := nums[p]
            nums[p] = nums[i]
            nums[i] = temp
            p++
        }
    }
    return nums
}

2363. 合并相似的物品-簡(jiǎn)單

題目描述:
給你兩個(gè)二維整數(shù)數(shù)組 items1 和 items2 ,表示兩個(gè)物品集合。每個(gè)數(shù)組 items 有以下特質(zhì):
items[i] = [valuei, weighti] 其中 valuei 表示第 i 件物品的 價(jià)值 ,weighti 表示第 i 件物品的 重量 。
items 中每件物品的價(jià)值都是 唯一的 。
請(qǐng)你返回一個(gè)二維數(shù)組 ret,其中 ret[i] = [valuei, weighti], weighti 是所有價(jià)值為 valuei 物品的 重量之和 。
注意:ret 應(yīng)該按價(jià)值 升序 排序后返回。

題解:
思想就是哈希表,但是因?yàn)楣1頍o(wú)序且價(jià)值上限是1000,所以采用了計(jì)數(shù)排序的思想用一個(gè)長(zhǎng)度是1000的數(shù)組保存重量,然后遍歷此數(shù)組取出重量相加后的結(jié)果

代碼(Go):

func mergeSimilarItems(items1 [][]int, items2 [][]int) [][]int {
    arr := [1001]int{}
    for _,v := range items1{
        arr[v[0]] += v[1]
    }
    for _,v := range items2{
        arr[v[0]] += v[1]
    }
    sce := [][]int{}
    for i,v := range arr{
        if v != 0{
            scei := make([]int,2)
            scei[0] = i
            scei[1] = v
            sce = append(sce,scei)
        }
    }
    return sce
}

1408. 數(shù)組中的字符串匹配-簡(jiǎn)單

題目描述:
給你一個(gè)字符串?dāng)?shù)組 words ,數(shù)組中的每個(gè)字符串都可以看作是一個(gè)單詞。請(qǐng)你按 任意 順序返回 words 中是其他單詞的子字符串的所有單詞。
如果你可以刪除 words[j] 最左側(cè)和/或最右側(cè)的若干字符得到 words[i] ,那么字符串 words[i] 就是 words[j] 的一個(gè)子字符串。

題解:
只會(huì)暴力,本來(lái)以為不行,沒(méi)想到官方題解也只有暴力,看評(píng)論有大佬用超級(jí)長(zhǎng)的代碼降低了時(shí)間復(fù)雜度,估計(jì)因?yàn)檫@題是簡(jiǎn)單題所以官方就沒(méi)給優(yōu)化的算法

代碼(Go):

func stringMatching(words []string) (ans []string) {
    for i, x := range words {
        for j, y := range words {
            if j != i && strings.Contains(y, x) {
                ans = append(ans, x)
                break
            }
        }
    }
    return
}

92. 反轉(zhuǎn)鏈表 II-中等

題目描述:
給你單鏈表的頭指針 head 和兩個(gè)整數(shù) left 和 right ,其中 left <= right 。請(qǐng)你反轉(zhuǎn)從位置 left 到位置 right 的鏈表節(jié)點(diǎn),返回 反轉(zhuǎn)后的鏈表 。

題解:
反轉(zhuǎn)之后再將需要反轉(zhuǎn)的子鏈表和前后連接起來(lái),用一個(gè)變量記錄子鏈表的前連接點(diǎn),三個(gè)變量用于反轉(zhuǎn)鏈表。官方題解在一次遍歷中邊遍歷邊進(jìn)行頭插法插節(jié)點(diǎn),可以少遍歷一次鏈表,速度更快

代碼(Go):

func reverseBetween(head *ListNode, left int, right int) *ListNode {
    if head.Next == nil || left == right{
        return head
    }
    p,r,l := head,head,head
    q := p.Next
    for i := 0;i < left - 1;i++{
        p = p.Next
        q = q.Next
    }
    for i := 0;i < right - 1;i++{
        r = r.Next
    }
    p.Next = r.Next
    r.Next = nil
    for q.Next != nil{
        r = q.Next
        q.Next = p
        p = q
        q = r
        r = r.Next
    }
    q.Next = p
    if left > 1{
        for i := 0;i < left - 2;i++{
            l = l.Next
        }
        l.Next = q
    }else{
        head = q
    }
    return head
}

總結(jié)

又是比較順利的一天,沒(méi)有什么難題文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-487472.html

到了這里,關(guān)于從零開(kāi)始的力扣刷題記錄-第四十八天的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 從零開(kāi)始的力扣刷題記錄-第五十八天

    題目描述: 給你一個(gè) 不包含 任何零的整數(shù)數(shù)組 nums ,找出自身與對(duì)應(yīng)的負(fù)數(shù)都在數(shù)組中存在的最大正整數(shù) k 。 返回正整數(shù) k ,如果不存在這樣的整數(shù),返回 -1 。 題解: 哈希表存儲(chǔ)負(fù)數(shù),再遍歷nums對(duì)每一個(gè)正數(shù)去哈希表中查找是否存在對(duì)應(yīng)的負(fù)數(shù)。存在就更新返回值 代碼

    2024年02月09日
    瀏覽(23)
  • 從零開(kāi)始的力扣刷題記錄-第七十二天

    題目描述: 給你一個(gè)整數(shù)數(shù)組 nums ,它包含 2 * n 個(gè)整數(shù)。 你需要將 nums 劃分成 n 個(gè)數(shù)對(duì),滿(mǎn)足: 每個(gè)元素 只屬于一個(gè) 數(shù)對(duì)。 同一數(shù)對(duì)中的元素 相等 。 如果可以將 nums 劃分成 n 個(gè)數(shù)對(duì),請(qǐng)你返回 true ,否則返回 false 題解: 哈希表統(tǒng)計(jì)各元素?cái)?shù)量,如果有不能被2整除的就

    2024年02月11日
    瀏覽(24)
  • 從零開(kāi)始的力扣刷題記錄-第三十九天

    題目描述: 給定一個(gè) 無(wú)重復(fù)元素 的 有序 整數(shù)數(shù)組 nums 。 返回 恰好覆蓋數(shù)組中所有數(shù)字 的 最小有序 區(qū)間范圍列表 。也就是說(shuō),nums 的每個(gè)元素都恰好被某個(gè)區(qū)間范圍所覆蓋,并且不存在屬于某個(gè)范圍但不屬于 nums 的數(shù)字 x 。 列表中的每個(gè)區(qū)間范圍 [a,b] 應(yīng)該按如下格式輸

    2024年02月06日
    瀏覽(26)
  • 從零開(kāi)始的力扣刷題記錄-第八十七天

    題目描述: 給你一個(gè)二叉樹(shù)的根節(jié)點(diǎn) root ,樹(shù)中每個(gè)節(jié)點(diǎn)都存放有一個(gè) 0 到 9 之間的數(shù)字。 每條從根節(jié)點(diǎn)到葉節(jié)點(diǎn)的路徑都代表一個(gè)數(shù)字: 例如,從根節(jié)點(diǎn)到葉節(jié)點(diǎn)的路徑 1 - 2 - 3 表示數(shù)字 123 。 計(jì)算從根節(jié)點(diǎn)到葉節(jié)點(diǎn)生成的 所有數(shù)字之和 。 葉節(jié)點(diǎn) 是指沒(méi)有子節(jié)點(diǎn)的節(jié)點(diǎn)

    2024年02月07日
    瀏覽(32)
  • 從零開(kāi)始的力扣刷題記錄-第五十一天

    題目描述: 給你一棵二叉搜索樹(shù)的 root ,請(qǐng)你 按中序遍歷 將其重新排列為一棵遞增順序搜索樹(shù),使樹(shù)中最左邊的節(jié)點(diǎn)成為樹(shù)的根節(jié)點(diǎn),并且每個(gè)節(jié)點(diǎn)沒(méi)有左子節(jié)點(diǎn),只有一個(gè)右子節(jié)點(diǎn)。 題解: 中序遍歷存儲(chǔ)節(jié)點(diǎn)后按順序連接即可 代碼(Go): 題目描述: 小扣在秋日市集發(fā)

    2024年02月08日
    瀏覽(25)
  • 從零開(kāi)始的力扣刷題記錄-第六十四天

    題目描述: 給你一個(gè)下標(biāo)從 0 開(kāi)始的整數(shù)數(shù)組 nums 。在一步操作中,你可以執(zhí)行以下步驟: 從 nums 選出 兩個(gè) 相等的 整數(shù) 從 nums 中移除這兩個(gè)整數(shù),形成一個(gè) 數(shù)對(duì) 請(qǐng)你在 nums 上多次執(zhí)行此操作直到無(wú)法繼續(xù)執(zhí)行。 返回一個(gè)下標(biāo)從 0 開(kāi)始、長(zhǎng)度為 2 的整數(shù)數(shù)組 answer 作為答

    2024年02月11日
    瀏覽(24)
  • 從零開(kāi)始的力扣刷題記錄-第六十一天

    題目描述: 給定由一些正數(shù)(代表長(zhǎng)度)組成的數(shù)組 nums ,返回 由其中三個(gè)長(zhǎng)度組成的、面積不為零的三角形的最大周長(zhǎng) 。如果不能形成任何面積不為零的三角形,返回 0。 題解: 排序后從后往前遍歷,取最大的三個(gè)邊,如果滿(mǎn)足兩邊之和大于第三邊則返回,否則整體向前

    2024年02月09日
    瀏覽(25)
  • 【從零開(kāi)始學(xué)習(xí)JAVA | 第四十五篇】反射

    【從零開(kāi)始學(xué)習(xí)JAVA | 第四十五篇】反射

    目錄 前言: ?反射: ?使用反射的步驟: 1.獲取階段: 2.使用階段: 反射的應(yīng)用場(chǎng)景: 使用反射的優(yōu)缺點(diǎn): 總結(jié): Java中的反射是一項(xiàng)強(qiáng)大而靈活的功能,它允許程序在運(yùn)行時(shí) 動(dòng)態(tài)地獲取、操作和利用類(lèi)的信息 。通過(guò)反射,我們可以在運(yùn)行時(shí)檢查和修改類(lèi)的屬性、調(diào)用類(lèi)

    2024年02月13日
    瀏覽(91)
  • 【從零開(kāi)始學(xué)習(xí)JAVA | 第四十篇】了解線(xiàn)程池

    【從零開(kāi)始學(xué)習(xí)JAVA | 第四十篇】了解線(xiàn)程池

    目錄 前言: 線(xiàn)程池: 線(xiàn)程池的工作流程: 代碼實(shí)現(xiàn)線(xiàn)程池: 任務(wù)拒絕策略:? 線(xiàn)程池多大才算合適? 總結(jié): ????????在Java編程中,線(xiàn)程池是一個(gè)強(qiáng)大的工具,它能夠管理和復(fù)用線(xiàn)程,提供高效的并發(fā)處理能力。通過(guò)線(xiàn)程池,我們可以有效地控制并發(fā)線(xiàn)程的數(shù)量,并降

    2024年02月13日
    瀏覽(22)
  • 【從零開(kāi)始學(xué)習(xí)JAVA | 第四十六篇】處理請(qǐng)求參數(shù)

    【從零開(kāi)始學(xué)習(xí)JAVA | 第四十六篇】處理請(qǐng)求參數(shù)

    ? ? ? ? 在我們之前的學(xué)習(xí)中,我們已經(jīng)基本學(xué)習(xí)完了JAVA的基礎(chǔ)內(nèi)容,從今天開(kāi)始我們就逐漸進(jìn)入到JAVA的時(shí)間,在這一大篇章,我們將對(duì)前后端有一個(gè)基本的認(rèn)識(shí),并要學(xué)習(xí)如何成為一名合格的后端工程師。今天我們介紹的內(nèi)容是:如何在后端處理前端的請(qǐng)求 目錄 前言:

    2024年02月11日
    瀏覽(19)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包