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

算法训练营第二天| 209.长度最小的子数组、59.螺旋矩阵II、区间和

209.长度最小的子数组

题目

在这里插入图片描述

思路与解法

**第一想法:**无
carl的讲解: 滑动窗口

class Solution:def minSubArrayLen(self, target: int, nums: List[int]) -> int:i=j=0lens = len(nums)sum = 0res = lens + 1while j < lens:# for m in range(i, j+1):#     sum += nums[m]sum += nums[j]while sum >= target:# res = j - i + 1 if res > j -i + 1 else resres = min(j-i+1, res)sum -= nums[i]i += 1j += 1return res if res < lens + 1 else 0

注释的地方增加了时间复杂度,导致运算超时

59.螺旋矩阵II

题目

在这里插入图片描述

思路与解法

第一想法:
carl的讲解: 模拟过程的题 找到一定的规律去模拟整个过程

class Solution:def generateMatrix(self, n: int) -> List[List[int]]:startx = starty = 0 # 每次的起始下标i = j = 0 # 下标count = 1 # 要填入的数res = [[0] * n for i in range(n)]for j in range(n // 2):startx = jstarty = jfor i in range(0, n-1 -j*2):print(startx, starty)res[startx][starty] = countcount += 1starty = starty + 1for i in range(0, n-1-j*2):print(startx, starty)res[startx][starty]= countcount += 1startx = startx + 1for i in range(0, n-1-j*2):print(startx, starty)res[startx][starty]= countcount += 1starty = starty - 1for i in range(0, n-1-j*2):print(startx, starty)res[startx][starty]= countcount += 1startx = startx - 1if n % 2 == 1:res[n//2][n//2] = count return res

区间和

题目

在这里插入图片描述

思路与解法

carl的讲解: 前缀和思想,简化计算,暴力法也能做,但是时间复杂度高。

#include <iostream>
#include <vector>
using namespace std;
int main() {int n, a, b;cin >> n;vector<int> vec(n);vector<int> p(n);int presum = 0;for (int i = 0; i < n; i++) {cin >> vec[i];presum += vec[i];p[i] = presum;}while (cin >> a >> b) {int sum;if (a == 0) sum = p[b];else sum = p[b] - p[a - 1];cout << sum << endl;}
}

相关文章:

  • Flink 消费 Kafka 数据流的最佳实践
  • 【激光雷达3D(7)】CenterPoint两阶段细化仅使用BEV特征;PV-RCNN两阶段细化使用体素特征;M3DETRTransformer统一多表征特征
  • 机器学习(7)——K均值聚类
  • 17.第二阶段x64游戏实战-人工遍历二叉树结构
  • 精益数据分析(20/126):解析经典数据分析框架,助力创业增长
  • Ollama工具调用(Tool Calls)业务应用案例
  • 各种各样的bug合集
  • 第一章:Model Context Protocol (MCP)
  • 【k8s】k8s是怎么实现自动扩缩的
  • 32BIT的SPI主机控制
  • 面试篇:Spring Boot
  • HOJ.单词统计
  • NLP实战(4):使用PyTorch构建LSTM模型预测糖尿病
  • 【网工第6版】第5章 网络互联⑦
  • 软考:数值转换知识点详解
  • Phthon
  • 【Linux】基于阻塞队列的生产消费者模型
  • 火语言RPA--发送邮件
  • 树莓派安装GStreamer ,opencv支持, 并在虚拟环境中使用的安装方法
  • opencv--图像变换
  • 技术派|“会飞的手榴弹”:微型无人机将深刻改变单兵作战方式
  • 5月1日起,涉外婚姻登记将在上海市16区全面铺开
  • 东部战区新闻发言人就美“劳伦斯”号导弹驱逐舰过航台湾海峡发表谈话
  • 内蒙古镶黄旗委原书记好毕斯哈拉图履新锡林郭勒盟民政局局长
  • 男粉丝咬伤女主播嘴后写的条子引争议:赔偿“十万元”还是“十5元”?
  • 多元布局、抱团取暖……上海虹口区召开外向型企业圆桌会议