无主之地2配置高吗|看真人裸体BBBBB|秋草莓丝瓜黄瓜榴莲色多多|真人強奷112分钟|精品一卡2卡3卡四卡新区|日本成人深夜苍井空|八十年代动画片

網易首頁 > 網易號 > 正文 申請入駐

2026-04-24:最大和最小 K 個元素的絕對差。用go語言,給定整數數組 nums 和整數 k,分別取出數組里最大的 k 個數并求它們的和;再取出數

0
分享至

2026-04-24:最大和最小 K 個元素的絕對差。用go語言,給定整數數組 nums 和整數 k,分別取出數組里最大的 k 個數并求它們的和;再取出數組里最小的 k 個數并求它們的和。最后計算這兩個和之間的差值的絕對值,并返回該結果。

1 <= n == nums.length <= 100。

1 <= nums[i] <= 100。

1 <= k <= n。

輸入: nums = [5,2,2,4], k = 2。

輸出: 5。

解釋:

k = 2 個最大的元素是 4 和 5。它們的總和是 4 + 5 = 9。

k = 2 個最小的元素是 2 和 2。它們的總和是 2 + 2 = 4。

絕對差值是 abs(9 - 4) = 5。

題目來自力扣3774。

代碼執行過程

我們以輸入nums = [5, 2, 2, 4],k = 2為例,完整拆解執行步驟:

第一步:定義求和工具函數

程序先定義了一個sum函數,作用是接收一個整數切片,遍歷里面所有數字并累加,返回最終的總和,專門用來計算數組片段的和。

第二步:執行核心計算函數 absDifference

這是實現題目要求的核心函數,執行步驟如下:

  1. 1.對原數組進行升序排序
    傳入的數組是[5,2,2,4],排序后從小到大排列為:[2, 2, 4, 5]。

  2. 2.截取最小的 k 個元素并求和
    排序后的數組前 k 個元素就是最小的 k 個數,這里 k=2,截取片段為[2, 2];
    調用sum函數遍歷累加,得到最小 k 個數的和:2+2=4

  3. 3.截取最大的 k 個元素并求和
    排序后的數組最后 k 個元素就是最大的 k 個數,這里 k=2,截取片段為[4, 5];
    調用sum函數遍歷累加,得到最大 k 個數的和:4+5=9。

  4. 4.計算兩個和的差值
    用最大 k 數的和 減去 最小 k 數的和:9 - 4 = 5;
    因為題目要求絕對差值,而最大和一定大于等于最小和,所以差值本身就是最終結果。

第三步:主函數調用與輸出
  1. 1. 在main函數中定義測試用的數組nums和整數k;

  2. 2. 調用核心函數absDifference得到計算結果 5;

  3. 3. 將結果打印輸出,控制臺顯示5。

時間復雜度與空間復雜度分析 1. 總時間復雜度

時間復雜度由代碼中最耗時的操作決定:

  • ? 核心耗時操作:數組排序,Go 語言slices.Sort對整型切片排序的時間復雜度為O(n log n)(n 是數組長度);

  • ? 求和操作:兩次遍歷長度為 k 的切片,總時間為 O(k),遠小于排序的耗時;

  • ? 其他操作(截取切片、減法)都是常數時間 O(1)。

因此,總的時間復雜度為 O(n log n)。

2. 總額外空間復雜度

額外空間指除了輸入數據外,程序運行時額外開辟的內存空間

  • ?slices.Sort原地排序,不會開辟新的數組空間;

  • ? 切片截取操作只是創建新的切片引用,不復制底層數組數據;

  • ? 僅使用了少量變量存儲和、臨時值,占用常數空間;

因此,總的額外空間復雜度為 O(1)(常數級空間)。

總結

  1. 1. 執行核心流程:排序數組 → 取前k小求和 → 取后k大求和 → 計算差值;

  2. 2. 總時間復雜度:O(n log n)(由排序操作決定);

  3. 3. 總額外空間復雜度:O(1)(原地操作,無額外內存開銷)。

Go完整代碼如下:

package main

import (
"fmt"
"slices"
)

func sum(a []int) (s int) {
for _, x := range a {
s += x
}
return s
}

func absDifference(nums []int, k int)int {
slices.Sort(nums)
return sum(nums[len(nums)-k:]) - sum(nums[:k])
}

func main() {
nums := []int{5, 2, 2, 4}
k := 2
result := absDifference(nums, k)
fmt.Println(result)
}

Python完整代碼如下:

# -*-coding:utf-8-*-

def sum_array(a):
"""計算列表元素的和"""
return sum(a)

def abs_difference(nums, k):
"""計算最大k個元素之和與最小k個元素之和的差"""
nums.sort() # 原地排序
# 最大k個元素之和 - 最小k個元素之和
return sum(nums[-k:]) - sum(nums[:k])

def main():
nums = [5, 2, 2, 4]
k = 2
result = abs_difference(nums, k)
print(result)

if __name__ == "__main__":
main()

C++完整代碼如下:

  




int absDifference(std::vector& nums, int k) {
std::sort(nums.begin(), nums.end());

// 計算前k個元素的和
int sumMin = std::accumulate(nums.begin(), nums.begin() + k, 0);

// 計算后k個元素的和
int sumMax = std::accumulate(nums.end() - k, nums.end(), 0);

return sumMax - sumMin;
}

int main() {
std::vector nums = {5, 2, 2, 4};
int k = 2;
int result = absDifference(nums, k);
std::cout << result << std::endl;
return0;
}

我們相信人工智能為普通人提供了一種“增強工具”,并致力于分享全方位的AI知識。在這里,您可以找到最新的AI科普文章、工具評測、提升效率的秘籍以及行業洞察。 歡迎關注“福大大架構師每日一題”,發消息可獲得面試資料,讓AI助力您的未來發展。

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
投資者自稱持股14萬 替大專兒子向上市公司求職

投資者自稱持股14萬 替大專兒子向上市公司求職

看看新聞Knews
2026-05-12 20:56:09
網傳上海生化所發生有害物泄露,致多名師生中毒,校方隱瞞不報

網傳上海生化所發生有害物泄露,致多名師生中毒,校方隱瞞不報

可達鴨面面觀
2026-05-12 20:27:09
黃曉明被曝現身婦產科醫院,工作室回應

黃曉明被曝現身婦產科醫院,工作室回應

大象新聞
2026-05-12 15:14:07
笑不活了!當你覺得在工作中捅了很大的簍子的時候,不妨看看他

笑不活了!當你覺得在工作中捅了很大的簍子的時候,不妨看看他

蘭妮搞笑分享
2026-04-24 12:59:31
以色列發動空襲

以色列發動空襲

南方都市報
2026-05-12 12:44:03
外交部談黎智英案:中央政府堅定支持香港司法機關依法履職盡責

外交部談黎智英案:中央政府堅定支持香港司法機關依法履職盡責

澎湃新聞
2026-05-12 16:10:26
卡拉格:切爾西絕對會不惜一切代價把熱刺送到英冠

卡拉格:切爾西絕對會不惜一切代價把熱刺送到英冠

懂球帝
2026-05-12 12:20:06
山西民工首富,400億跨境帝國,又又又崩塌了……

山西民工首富,400億跨境帝國,又又又崩塌了……

毒sir財經
2026-05-11 21:42:32
西伯利亞:吃不完的鹿肉,收不完的糧;砍不完的森林,挖不完的礦

西伯利亞:吃不完的鹿肉,收不完的糧;砍不完的森林,挖不完的礦

抽象派大師
2026-05-12 20:12:00
女演員千萬別整容,看央視《主角》觀眾對秦海璐的評價,就懂了

女演員千萬別整容,看央視《主角》觀眾對秦海璐的評價,就懂了

陳述影視
2026-05-11 23:58:30
老了才看透:父弱母強的家庭,養出來的孩子,大多是這兩種結局

老了才看透:父弱母強的家庭,養出來的孩子,大多是這兩種結局

心理觀察局
2026-05-11 10:00:27
被梁靖崑逆轉,大布如球迷想得那樣釋懷了,沒想到回國還評價大胖

被梁靖崑逆轉,大布如球迷想得那樣釋懷了,沒想到回國還評價大胖

格斗聯盟有話說
2026-05-12 23:23:04
劉嘉玲曬法國生活,梁朝偉在老婆鏡頭下撿雞蛋,兩口子生活好愜意

劉嘉玲曬法國生活,梁朝偉在老婆鏡頭下撿雞蛋,兩口子生活好愜意

喜歡歷史的阿繁
2026-05-12 12:12:22
大S女兒賬號爭議引發關注,汪小菲緊急回應

大S女兒賬號爭議引發關注,汪小菲緊急回應

何嗀愛捕漁
2026-05-11 20:23:59
5千萬揮霍一空,馬蓉超市打夜班,裹緊口罩不敢露臉,現狀太唏噓

5千萬揮霍一空,馬蓉超市打夜班,裹緊口罩不敢露臉,現狀太唏噓

凡知
2026-05-13 00:14:01
弗洛倫蒂諾:我不會辭職!皇馬不總是能贏,我也沒患晚期癌癥

弗洛倫蒂諾:我不會辭職!皇馬不總是能贏,我也沒患晚期癌癥

奧拜爾
2026-05-13 00:25:24
湖人0-4出局后,NBA奪冠概率更新!騎士1.8%遭低估馬刺13.2%第三

湖人0-4出局后,NBA奪冠概率更新!騎士1.8%遭低估馬刺13.2%第三

鍋子籃球
2026-05-12 22:07:21
利空來了!

利空來了!

櫻桃大房子
2026-05-12 21:45:08
湖人比賽場邊美女!被科比稱為全球最美女性!

湖人比賽場邊美女!被科比稱為全球最美女性!

柚子說球
2026-05-12 14:12:49
山東37歲女子離婚當天徹底瘋了,當場撒潑嘶吼前夫,網友紛紛叫好

山東37歲女子離婚當天徹底瘋了,當場撒潑嘶吼前夫,網友紛紛叫好

社會日日鮮
2026-05-12 08:09:39
2026-05-13 01:07:00
moonfdd incentive-icons
moonfdd
福大大架構師每日一題
1223文章數 67關注度
往期回顧 全部

科技要聞

宇樹發布載人變形機甲,定價390萬元起

頭條要聞

特朗普稱將同中方討論對臺軍售和黎智英案 外交部回應

頭條要聞

特朗普稱將同中方討論對臺軍售和黎智英案 外交部回應

體育要聞

騎士終于玩明白了?

娛樂要聞

白鹿風波升級!掉粉20萬評論區淪陷

財經要聞

利潤再腰斬 京東干外賣后就沒過過好日子

汽車要聞

吉利銀河“TT”申報圖曝光 電動尾翼+激光雷達

態度原創

時尚
本地
手機
公開課
軍事航空

普通人真該學學如何穿搭!多穿裙子比褲子更時髦,大方提氣質

本地新聞

用蘇繡的方式,打開江西婺源

手機要聞

小米18工程機曝光:2nm芯、雙揚、大X軸馬達,終不用妥協了

公開課

李玫瑾:為什么性格比能力更重要?

軍事要聞

知情人士披露:美國或考慮恢復對伊朗軍事行動

無障礙瀏覽 進入關懷版