您的位置:首页 > 汽车 > 时评 > 鞍山网站怎么做出来的_数字广东网络建设有限公司招聘_网络营销推广渠道_88个seo网站优化基础知识点

鞍山网站怎么做出来的_数字广东网络建设有限公司招聘_网络营销推广渠道_88个seo网站优化基础知识点

2025/6/19 5:54:42 来源:https://blog.csdn.net/huaz_md/article/details/147163619  浏览:    关键词:鞍山网站怎么做出来的_数字广东网络建设有限公司招聘_网络营销推广渠道_88个seo网站优化基础知识点
鞍山网站怎么做出来的_数字广东网络建设有限公司招聘_网络营销推广渠道_88个seo网站优化基础知识点

华子目录

  • 长度最小的子数组
    • 思路
  • 螺旋矩阵
    • 思路
    • 总结

长度最小的子数组

  • https://leetcode.cn/problems/minimum-size-subarray-sum/

在这里插入图片描述

思路

  • 使用滑动窗口left表示滑动窗口的起始点right表示滑动窗口的终点
class Solution:def minSubArrayLen(self, target: int, nums: List[int]) -> int:left = 0     # left表示滑动窗口的起始点res = float('inf')   # float('inf')表示无穷大total = 0    # 记录滑动窗口中的和length = len(nums)for right in range(length):   # right表示滑动窗口的终点total += nums[right]while total >= target:l = right - left + 1res = min(l, res)total -= nums[left]left += 1if res == float('inf'):   # 说明在遍历过程中,初始的res始终没有被替换,即nums的总和小于targetreturn 0else:                # res被替换了,说明有满足条件的return res

螺旋矩阵

  • https://leetcode.cn/problems/spiral-matrix-ii/

在这里插入图片描述

思路

  • 每遍历一条边时,保持循环不变量原则,即每一条边都遵循左闭右开[)的原则
class Solution:def generateMatrix(self, n: int) -> List[List[int]]:arr = [ [None]*n for _ in range(n)]   # 先申请好一段二维数组startx, starty = 0, 0   # 每遍历一圈的起始位置offset = 1               # 右开count = 1               # 技术器loop = n // 2           # 总共螺旋的圈数mid = n // 2             # 若n为奇数,则最中间元素的坐标while loop > 0:for y in range(starty, n - offset):    # 上边arr[startx][y] = countcount+=1for x in range(startx, n - offset):   # 右边arr[x][n - offset] = countcount+=1for y in range(n - offset, starty, -1):   # 下边arr[n - offset][y] = countcount+=1for x in range(n - offset, startx, -1):   # 左边arr[x][starty] = countcount+=1startx += 1starty += 1offset += 1loop -= 1if n%2 == 1:   # 若n为奇数arr[mid][mid] = n*nreturn arr

总结

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com