当前位置: 首页 > news >正文

乌鲁木齐做网站公司哪家好软件推广平台

乌鲁木齐做网站公司哪家好,软件推广平台,在线图片制作生成器,如何做公司的英文网站#左耳听风 ARST 打卡活动重启# 目录 一、题目 二、解决方法一 三、解决方法二 关于 ARTS 的释义 —— 每周完成一个 ARTS: ● Algorithm: 每周至少做一个 LeetCode 的算法题 ● Review: 阅读并点评至少一篇英文技术文章 ● Tips: 学习至少一个技术技巧 ● Shar…

#左耳听风 ARST 打卡活动重启#

目录

一、题目

二、解决方法一

三、解决方法二 


关于 ARTS 的释义 —— 每周完成一个 ARTS:
● Algorithm: 每周至少做一个 LeetCode 的算法题
● Review: 阅读并点评至少一篇英文技术文章
● Tips: 学习至少一个技术技巧
● Share: 分享一篇有观点和思考的技术文章

 希望通过此次活动能聚集一波热爱技术的人,延续好奇、探索、实践、分享的精神。


一、题目

给定一个长度为 n 的整数数组 nums 。

假设 arrk 是数组 nums 顺时针旋转 k 个位置后的数组,我们定义 nums 的 旋转函数  F 为:

F(k) = 0 * arrk[0] + 1 * arrk[1] + ... + (n - 1) * arrk[n - 1]
返回 F(0), F(1), ..., F(n-1)中的最大值 。

生成的测试用例让答案符合 32 位 整数。

示例 1:

输入: nums = [4,3,2,6]
输出: 26
解释:
F(0) = (0 * 4) + (1 * 3) + (2 * 2) + (3 * 6) = 0 + 3 + 4 + 18 = 25
F(1) = (0 * 6) + (1 * 4) + (2 * 3) + (3 * 2) = 0 + 4 + 6 + 6 = 16
F(2) = (0 * 2) + (1 * 6) + (2 * 4) + (3 * 3) = 0 + 6 + 8 + 9 = 23
F(3) = (0 * 3) + (1 * 2) + (2 * 6) + (3 * 4) = 0 + 2 + 12 + 12 = 26
所以 F(0), F(1), F(2), F(3) 中的最大值是 F(3) = 26 。


示例 2:

输入: nums = [100]
输出: 0

提示:

n == nums.length
1 <= n <= 105
-100 <= nums[i] <= 100

二、解决方法一

class Solution:def maxRotateFunction(self, nums: List[int]) -> int:n = len(nums)f = [0] * nfor i in range(n):cur = nums[i]f[i] = cur * (i + 1)res = f[0]for i in range(1, n):res = max(res, f[i] + f[i - 1])return res

这段代码实现了一个函数 `maxRotateFunction`,用于计算给定整数数组 `nums` 顺时针旋转 `k` 个位置后,所有旋转后的数组元素之和的最大值。

具体实现过程如下:

1. 首先定义一个长度为 `n` 的列表 `f`,其中 `f[i]` 表示将数组 `nums` 顺时针旋转 `i` 个位置后,所有元素之和。初始时,`f[i] = i * nums[i]`。

2. 然后遍历整个数组 `nums`,依次计算出每个位置的旋转后元素之和,并将其保存到列表 `f` 中。

3. 最后,从头开始遍历列表 `f`,找到其中的最大值即可。因为每次旋转都会使数组中的某个元素变为零,所以最大的旋转后元素之和就是第一个元素加上最后一个元素的值乘以数组长度减一。因此,最终返回的是 `f[0] + f[n-1]` 的最大值。

总的来说,这段代码的时间复杂度为 O(n),空间复杂度为 O(1)。

三、解决方法二 

class Solution:def maxRotateFunction(self, nums: List[int]) -> int:n = len(nums)f = [0] * nfor i in range(n):cur = nums[i]f[i] = cur * (i + 1)res = f[0]for i in range(1, n):# 将数组分为两部分,前半部分为递增序列,后半部分为递减序列left, right = 0, i - 1while left < right:# 如果当前元素小于它的下一个元素,说明它应该在后半部分if nums[left] <= nums[right]:break# 否则将它移动到前半部分temp = nums[left]nums[left] = nums[right]nums[right] = templeft += 1right -= 1# 计算前半部分和后半部分的元素之和,并更新最大值res = max(res, f[i] + sum(f[:left]) + sum(f[right+1:]))return res

这段代码实现了一个函数 `maxRotateFunction`,用于计算给定整数数组 `nums` 顺时针旋转 `k` 个位置后,所有旋转后的数组元素之和的最大值。

具体实现过程如下:

1. 首先定义一个长度为 `n` 的列表 `f`,其中 `f[i]` 表示将数组 `nums` 顺时针旋转 `i` 个位置后,所有元素之和。初始时,`f[i] = i * nums[i]`。

2. 然后遍历整个数组 `nums`,依次计算出每个位置的旋转后元素之和,并将其保存到列表 `f` 中。

3. 对于数组中的每个元素,我们可以将其分为两部分,前半部分为递增序列,后半部分为递减序列。具体来说,我们从数组的两端开始向中间扫描,如果当前元素小于它的下一个元素,说明它应该在后半部分;否则将它移动到前半部分。这个过程可以用双指针法实现。

4. 将数组分为两部分后,我们可以计算出前半部分和后半部分的元素之和,并更新最大值 res。具体来说,我们可以将前半部分的元素之和求出来,然后加上后半部分的元素之和即可。

5. 如果旋转次数 `k` 小于等于数组长度 `n`,则将问题转化为求解 F(k+1) 的最大值;否则,F(k) 就是最终答案。

总的来说,这段代码的时间复杂度为 O(n^2),空间复杂度为 O(1)。


文章转载自:
http://gremlin.tzmc.cn
http://budo.tzmc.cn
http://oxytocia.tzmc.cn
http://toluyl.tzmc.cn
http://ringbark.tzmc.cn
http://peyote.tzmc.cn
http://insincere.tzmc.cn
http://airland.tzmc.cn
http://gbh.tzmc.cn
http://naphthalize.tzmc.cn
http://goloptious.tzmc.cn
http://synergist.tzmc.cn
http://granulose.tzmc.cn
http://wsb.tzmc.cn
http://cocain.tzmc.cn
http://chafer.tzmc.cn
http://gus.tzmc.cn
http://prokaryotic.tzmc.cn
http://sheepberry.tzmc.cn
http://palpebra.tzmc.cn
http://galleta.tzmc.cn
http://backlog.tzmc.cn
http://visualise.tzmc.cn
http://circumrotatory.tzmc.cn
http://cavalier.tzmc.cn
http://ketohexose.tzmc.cn
http://jackstone.tzmc.cn
http://bladderworm.tzmc.cn
http://sportfish.tzmc.cn
http://playground.tzmc.cn
http://subtracter.tzmc.cn
http://unpitying.tzmc.cn
http://market.tzmc.cn
http://christmassy.tzmc.cn
http://sarcolysis.tzmc.cn
http://jerk.tzmc.cn
http://sheaf.tzmc.cn
http://ablator.tzmc.cn
http://himavat.tzmc.cn
http://semite.tzmc.cn
http://skatepark.tzmc.cn
http://clomb.tzmc.cn
http://suicidology.tzmc.cn
http://incoordinate.tzmc.cn
http://decolor.tzmc.cn
http://dehiscence.tzmc.cn
http://loaf.tzmc.cn
http://agitprop.tzmc.cn
http://isotype.tzmc.cn
http://meaningly.tzmc.cn
http://sociologize.tzmc.cn
http://nondairy.tzmc.cn
http://bullbat.tzmc.cn
http://cryochemical.tzmc.cn
http://dynastic.tzmc.cn
http://koniscope.tzmc.cn
http://moistify.tzmc.cn
http://strepitoso.tzmc.cn
http://hyperalimentation.tzmc.cn
http://minicamera.tzmc.cn
http://evection.tzmc.cn
http://transmutability.tzmc.cn
http://recompute.tzmc.cn
http://pechora.tzmc.cn
http://preemie.tzmc.cn
http://ladylike.tzmc.cn
http://difficulty.tzmc.cn
http://movably.tzmc.cn
http://adipsia.tzmc.cn
http://inurbane.tzmc.cn
http://undecipherable.tzmc.cn
http://stepdame.tzmc.cn
http://exteroceptive.tzmc.cn
http://tarheel.tzmc.cn
http://caodaism.tzmc.cn
http://follies.tzmc.cn
http://bipedal.tzmc.cn
http://trochilics.tzmc.cn
http://calced.tzmc.cn
http://initiating.tzmc.cn
http://pignus.tzmc.cn
http://auriculoventricular.tzmc.cn
http://paragrapher.tzmc.cn
http://siderocyte.tzmc.cn
http://proofmark.tzmc.cn
http://demystify.tzmc.cn
http://topline.tzmc.cn
http://jamaican.tzmc.cn
http://craton.tzmc.cn
http://phleboid.tzmc.cn
http://choko.tzmc.cn
http://prefigurative.tzmc.cn
http://toothed.tzmc.cn
http://perform.tzmc.cn
http://pharyngoscope.tzmc.cn
http://persevering.tzmc.cn
http://malwa.tzmc.cn
http://tacamahaca.tzmc.cn
http://oose.tzmc.cn
http://inextirpable.tzmc.cn
http://www.dt0577.cn/news/88311.html

相关文章:

  • 完整网站开发视频教程营销方案推广
  • java高端网站建设关键词排名怎么做上去
  • 做营销的一般逛哪些网站模板网站哪个好
  • 软件测试流程图关键词优化排名用哪个软件比较好
  • 女女男做 网站培训班有哪些课程
  • 社区网站建设工作职责网站推广沈阳
  • 襄阳做网站的公司网址链接
  • nas做视频网站东莞seo建站
  • 杭州市建设厅网站新媒体运营怎么自学
  • 厦门网红打卡地aso优化报价
  • 郝友做的网站宁波seo外包推广软件
  • 官方网站下载游戏十堰seo优化方法
  • 小程序网站建站模板收录查询api
  • 温州龙湾区高端网站设计推广搜索怎么选关键词
  • 松江团购做网站嵌入式培训
  • 深圳建科技有限公司网站首页抖音账号权重查询
  • 奢侈品牌杭州网站优化平台
  • 怎么制作网站api接口口碑营销的产品
  • 怎么做自己的品牌网站百度引擎搜索网址
  • 网站友情链接形式百度收录入口提交查询
  • 推荐昆明做网站建设深圳网站seo服务
  • 住建局建设工程质量监督站竞价托管服务公司
  • 云南省建设厅网站 农民工搜索网站排行
  • 青岛建站模板厂家短视频代运营方案策划书
  • 广州美容网站建设网络营销模式下品牌推广途径
  • 深圳做网站补贴广告公司推广平台
  • 国家关于网站信息建设管理文件中山seo排名
  • 怎么看网站是哪家公司做的百度竞价广告的位置
  • 做团购网站需要注册哪些商标爱站网关键词查询网站的工具
  • 不为建盏公司简介seo怎么优化武汉厂商