亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

初始化map時如何設置容量可以防止rehash

初始化map時如何設置容量可以防止rehash

Go
有只小跳蛙 2023-08-21 14:47:07
s := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 0}capacity := len(s)m := make(map[int]bool, capacity)for _, n := range s {    m[n] = true}地圖會在 for 循環中重新散列嗎?或者容量應該乘以一個因子以防止重新散列,例如:capacity := len(s) * 1.3
查看完整描述

2 回答

?
天涯盡頭無女友

TA貢獻1831條經驗 獲得超9個贊

你不需要一個因素。規格:制作切片、地圖和元素:

make使用地圖類型和大小提示進行調用n將創建一個具有初始空間來容納n地圖元素的地圖。精確的行為取決于實現。

同樣來自內置文檔make()

Map:為空映射分配足夠的空間來容納指定數量的元素。該大小可以省略,在這種情況下會分配較小的起始大小。



查看完整回答
反對 回復 2023-08-21
?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

s此代碼是最優的,只要 的值小于即可不需要更改capacity



查看完整回答
反對 回復 2023-08-21
  • 2 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號