网易首页 > 网易号 > 正文 申请入驻

2026-06-30:容量最小的箱子。用go语言,给定一个整数数组 capacity 和一个整数 itemSize: - capacity[i] 表示第...

0
分享至

2026-06-30:容量最小的箱子。用go语言,给定一个整数数组 capacity 和一个整数 item)Size:

  • • capacity[i] 表示第 i 个箱子的容量。

  • • 若某个箱子的容量满足 capacity[i] >= itemSize,则说明该箱子可以放下这个物品。
    任务是:

找出所有能放下该物品的箱子中,容量最小的那个箱子对应的下标并返回。

补充规则:

  • • 如果存在多个箱子的容量都满足“最小容量”这一条件,则返回其中下标最小的那个。

  • • 如果所有箱子都无法放下该物品,则返回 -1。

1 <= capacity.length <= 100。

1 <= capacity[i] <= 100。

1 <= itemSize <= 100。

输入: capacity = [1,5,3,7], itemSize = 3。

输出: 2。

解释:

下标为 2 的箱子容量为 3,是可以存放该物品的容量最小的箱子,因此答案是 2。

题目来自力扣3861。

一、函数执行分步详细过程 步骤1:初始化两个标记变量

  1. 1. 变量minC:用来记录符合条件箱子的最小容量,初始赋值为系统最大整数math.MaxInt,保证后续任意合法箱子容量都会比它小,能完成首次替换。

  2. 2. 变量ans:用来记录最终要返回的箱子下标,初始赋值-1,对应题目“无可用箱子返回-1”的默认结果。

步骤2:从头遍历整个容量数组,逐个校验每个箱子

遍历规则:按数组下标从小到大依次读取每一个箱子的下标i和对应容量c,保证出现多个相同最小容量时,只会保留最先遇到(下标更小)的下标,满足题目补充规则。
数组元素依次遍历流程:

第1轮循环:i=0,c=1

判断条件:c >= itemSize1 >= 3,结果不成立。
不进入内部逻辑,直接跳过,minCans保持原值不变。

第2轮循环:i=1,c=5

判断条件:5 >= 3,条件成立;继续判断c < minC5 < 最大整数,条件成立。

  1. 1. 更新最小容量:minC = 5

  2. 2. 更新结果下标:ans = 1
    当前记录:可用最小容量5,对应下标1。

第3轮循环:i=2,c=3

判断条件:3 >= 3,条件成立;继续判断c < minC3 < 5,条件成立。

  1. 1. 更新最小容量:minC = 3

  2. 2. 更新结果下标:ans = 2
    当前记录:可用最小容量3,对应下标2。

第4轮循环:i=3,c=7

判断条件:7 >= 3,条件成立;继续判断c < minC7 < 3,条件不成立。
不更新任何变量,minC仍为3、ans仍为2。

步骤3:遍历结束,返回结果变量

全部箱子遍历完毕,ans存储的值为2,将2作为函数返回值输出。

补充边界场景逻辑说明

  1. 1. 多个箱子拥有相同最小可用容量:
    因为遍历严格按下标从小到大执行,只有当当前箱子容量严格小于已记录最小容量时,才会更新下标;容量相等时不会触发更新,会保留更早、下标更小的下标,符合题目要求。
    例:capacity=[4,3,3],itemSize=3,遍历到i=1时ans=1,i=2容量同为3不更新,最终返回1。

  2. 2. 无箱子能放下物品:
    全程没有任何一次进入条件内部,ans始终是初始值-1,最终返回-1。

二、复杂度分析 1. 时间复杂度

数组长度记为 n(capacity.length)。
算法会完整遍历数组中每一个元素,循环执行 n 次,每次循环内仅做两次数值比较、少量赋值操作,都是常数级 O(1) 运算,无嵌套循环。
总时间复杂度:O(n)

2. 额外空间复杂度

算法仅创建了两个独立整型变量minCans,开辟的存储空间数量和输入数组长度 n 无关,是固定常数空间,没有新建数组、切片、哈希表等随输入规模变化的容器。
总额外空间复杂度:O(1)

Go完整代码如下:

package main

import (
"fmt"
"math"
)

func minimumIndex(capacity []int, itemSize int)int {
minC := math.MaxInt
ans := -1
for i, c := range capacity {
if c >= itemSize && c < minC {
minC = c
ans = i
}
}
return ans
}

func main() {
capacity := []int{1, 5, 3, 7}
itemSize := 3
result := minimumIndex(capacity, itemSize)
fmt.Println(result)
}

Python完整代码如下:

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

import math

def minimum_index(capacity: list[int], item_size: int) -> int:
min_c = math.inf
ans = -1
for i, c in enumerate(capacity):
if c >= item_size and c < min_c:
min_c = c
ans = i
return ans

def main() -> None:
capacity = [1, 5, 3, 7]
item_size = 3
result = minimum_index(capacity, item_size)
print(result)

if __name__ == "__main__":
main()

C++完整代码如下:

  


// 提供 INT_MAX

int minimumIndex(const std::vector& capacity, int itemSize) {
int minC = INT_MAX;
int ans = -1;
for (int i = 0; i < capacity.size(); ++i) {
int c = capacity[i];
if (c >= itemSize && c < minC) {
minC = c;
ans = i;
}
}
return ans;
}

int main() {
std::vector capacity = {1, 5, 3, 7};
int itemSize = 3;
int result = minimumIndex(capacity, itemSize);
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.

相关推荐
热点推荐
“白海豚”预计登陆时间和地点!东莞狂风暴雨又要来了!

“白海豚”预计登陆时间和地点!东莞狂风暴雨又要来了!

东莞好生活
2026-08-07 00:12:09
我出差刚回来,发现小姑子把我100多平的婴儿房改成麻将房,我没吭声,第二天就把房子挂出去卖了,婆家傻眼了

我出差刚回来,发现小姑子把我100多平的婴儿房改成麻将房,我没吭声,第二天就把房子挂出去卖了,婆家傻眼了

墨染尘香
2026-08-06 17:19:33
判罚引全网热议!日本3战全胜拿八强三席,国乒仅剩陈幸同一人

判罚引全网热议!日本3战全胜拿八强三席,国乒仅剩陈幸同一人

华轩体育
2026-08-07 09:18:30
如果一个人混到了60岁,能拥有这3样东西,那绝对是人生赢家

如果一个人混到了60岁,能拥有这3样东西,那绝对是人生赢家

小影的娱乐
2026-08-07 00:08:30
内地居民买香港保险收益要缴税? 税务总局回应:并非新政,更不是专门针对香港保险市场,无需过度解读

内地居民买香港保险收益要缴税? 税务总局回应:并非新政,更不是专门针对香港保险市场,无需过度解读

每日经济新闻
2026-08-07 21:05:50
许世友放下刀,指着路过的陈赓大吼:戴眼镜的,你在这瞎指什么呢

许世友放下刀,指着路过的陈赓大吼:戴眼镜的,你在这瞎指什么呢

云霄纪史观
2026-08-07 17:00:55
曼联愿付1600万解约金挖西甲新星,球员却优先等待巴萨

曼联愿付1600万解约金挖西甲新星,球员却优先等待巴萨

赛场名场面
2026-08-07 21:00:46
贾玲近照曝光:体重回弹后大方坦言,不逼自己极端自律反而更开心

贾玲近照曝光:体重回弹后大方坦言,不逼自己极端自律反而更开心

动物奇奇怪怪
2026-08-05 08:55:53
光漂亮有什么用!张茹替代者0分1失误2犯,场上存在感只剩秀颜值?

光漂亮有什么用!张茹替代者0分1失误2犯,场上存在感只剩秀颜值?

弄月公子
2026-08-07 22:52:38
60%日本人不爱运动却长寿,权威期刊《柳叶刀》终于把原因找到了!

60%日本人不爱运动却长寿,权威期刊《柳叶刀》终于把原因找到了!

犀利强哥
2026-08-06 12:00:23
不打了!CBA一夜迎来大变,广州男篮5人官宣离队,青岛男篮3大地外援敲定

不打了!CBA一夜迎来大变,广州男篮5人官宣离队,青岛男篮3大地外援敲定

球场风暴
2026-08-07 10:39:56
如果2010年你买了1000块比特币,今天你大概率还是穷光蛋,没啥好羡慕

如果2010年你买了1000块比特币,今天你大概率还是穷光蛋,没啥好羡慕

怪味历史连连看
2026-08-02 12:42:01
竹知了下架风波,给华为提了个大醒

竹知了下架风波,给华为提了个大醒

关不羽
2026-08-05 01:13:24
河南好演员张春香底裤被扒!民办教师起步,获多个荣誉,幻想破灭

河南好演员张春香底裤被扒!民办教师起步,获多个荣誉,幻想破灭

阿笎评论哥
2026-08-07 12:30:51
当年卷走张靓颖全部身家的冯轲去哪了?时隔多年二人境遇差距太大

当年卷走张靓颖全部身家的冯轲去哪了?时隔多年二人境遇差距太大

小椰的奶奶
2026-08-07 14:19:49
黄岩岛烈士追授令:南海主权岂容碰瓷,谁再挑衅就须付出血的代价

黄岩岛烈士追授令:南海主权岂容碰瓷,谁再挑衅就须付出血的代价

触摸史迹
2026-08-07 11:04:51
砸下十亿就能换回一条命吗?47岁的蔡磊在与渐冻症苦苦周旋了六年之后,这个男人最终在这场生死豪赌中笑到了最后

砸下十亿就能换回一条命吗?47岁的蔡磊在与渐冻症苦苦周旋了六年之后,这个男人最终在这场生死豪赌中笑到了最后

人生录
2026-08-07 00:05:14
Shams:雄鹿、骑士与快船积极接触掘金,商讨沃特森先签后换

Shams:雄鹿、骑士与快船积极接触掘金,商讨沃特森先签后换

懂球帝
2026-08-07 08:23:06
查尔斯千算万算还是栽了!秘密接见哈里一家,转头就被梅根在晚宴上逢人便讲

查尔斯千算万算还是栽了!秘密接见哈里一家,转头就被梅根在晚宴上逢人便讲

白露文娱志
2026-08-06 14:30:12
上一场贸易战中国打赢了吗?说难听点,两场都输了

上一场贸易战中国打赢了吗?说难听点,两场都输了

小马姨
2026-08-04 10:22:29
2026-08-07 23:32:49
moonfdd incentive-icons
moonfdd
福大大架构师每日一题
1378文章数 78关注度
往期回顾 全部

科技要闻

突然涨价,"只收电费钱"的梁文锋,变了吗

头条要闻

穆杰塔巴被指给总统下"最后警告" 爆料人发声意味深长

头条要闻

穆杰塔巴被指给总统下"最后警告" 爆料人发声意味深长

体育要闻

去年信誓旦旦3000万 今年NBA查无此人

娱乐要闻

周也热恋结束,六个字暴露单身状态

财经要闻

腾讯WorkBuddy领跑AI办公 阿里字节急了?

汽车要闻

越7全球首秀 传祺开始进攻方盒子越野

态度原创

亲子
艺术
本地
游戏
时尚

亲子要闻

4个孩子2个确诊“自毁容貌综合征”!妈妈痛哭:“一声妈妈,一生妈妈,我绝不会放弃孩子。”

艺术要闻

冉茂芹风景与静物油画 19幅

本地新闻

课本里的童年,绍兴正上演

LPL最夸张翻盘局诞生!AL领先9000被WE惊天逆转,Cube都秀翻了

工装,好穿又有质感!

无障碍浏览 进入关怀版