【刷题日记】1672. 最富有客户的资产总量
本次刷题日记的第 32 篇,力扣题为:1672. 最富有客户的资产总量素 ,简单
一、题目描述:
今天又是一个加班的日子,回来习惯还是要保持,乍一看 leetcode 是一个简单题,心想,这怕不是有坑?
无论是什么题,总会有自己的道和术,工作几年后慢慢的发现,很多工程师或者是管理者,斗志是有术,而没有道,这是在思维上就没有精进还是对于自己的术没有总结和提炼呢?
咱们刷题的时候,我以前是按照专题来,比如说从字符串开始刷,然后数组,链表,其他数据结构,查找,排序,二叉树,图论等提题
二、这道题考察了什么思想?你的思路是什么?
今日一题继续来看看题目都带给了我们那些重要且有用的信息呢?
- 虽然题目说的花里胡哨的,咱们直接看本质,这个题咱们也别关注啥最富有的客户的资产总量,咱们直接关注二维数组中,每一个一维数组的和是多少,并且比较每一个一维数组的和,咱们即可得到数字和最大的那一结果
不知道 xdm ,看这个题的时候有没有觉得,不看示例的话,好像敢确定就是这么简单直接,看来示例之后,这确实是没有啥弯弯绕绕,直接遍历求和就可以了
思想很简单,我们也要落地到编码上面,真真实实做出来的才是硬功夫,耍嘴皮子的都是耍流氓
三、编码
根据上述逻辑和分析,我们就可以翻译成如下代码,注意咱们遍历的时候,遍历二维数组,也要遍历里面的一维数组
编码如下:
func maximumWealth(accounts [][]int) int { // 定义一个变量,存储结果,也用于过程中的比较 var res int for _, account := range accounts { sum := 0 // 计算每一个 一维数组的 和 for _, val := range account { sum += val } // 比较每一个一维数组的结果 if sum > res { res = sum } } return res }
思路清晰,编码也非常清晰,过程救不赘述了,直接看代码和注释
四、总结:
此题的时间复杂度也很明确,不是 O(n) 也不是 O(m),而是 O(nm) ,n 是外层循环的次数,m 内存循环的次数
空间复杂度,咱们引入的是常数级别的空间消耗,所以是 O(1)
原题地址:1672. 最富有客户的资产总量
今天就到这里,学习所得,若有偏差,还请斧正
欢迎点赞,关注,收藏
朋友们,你的支持和鼓励,是我坚持分享,提高质量的动力
好了,本次就到这里
技术是开放的,我们的心态,更应是开放的。拥抱变化,向阳而生,努力向前行。
我是阿兵云原生,欢迎点赞关注收藏,下次见~