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

算法训练营第二天| 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;}
}
http://www.xdnf.cn/news/1812.html

相关文章:

  • 数智视融合驱动未来,Al+数字孪生重塑价值|2025袋鼠云春季数智发布会回顾
  • 离线电脑安装python包
  • 六、初始化与清理(Initialization cleanup)
  • Spring Boot 整合 Lock4j + Redisson 实现分布式锁实战
  • YOLOv11架构革新——基于RFEM模块的小目标感受野增强与特征优化
  • 如何管理“完美主义”导致的进度拖延
  • 高德地图API + three.js + Vue3基础使用与使用 + 标记不显示避坑
  • IMX6ULL 最新方案移植教程中间间系列5——向开发板迁移SSH和FTP
  • LeetCode hot 100—最长有效括号
  • 【FAQ】安装Agent的主机,为何不能更改显示分辨率
  • CVE-2025-32102 | Ubuntu 下复现 CrushFTP telnetSocket接口SSRF
  • dataType 和 content-type 参数的作用
  • 补4月22日23日
  • Sentieon软件发布V202503版本
  • 首版次软件产品有哪些阶段?专业软件测试服务公司分享
  • 使用String path = FileUtilTest.class.getResource(“/1.txt“).getPath(); 报找不到路径
  • Spring Boot 中配置线程池时优化 `ThreadPoolTaskExecutor` 的配置总结
  • DDL小练习
  • Java小公司实习面经
  • python字符串(3):字符集/编码(查看修改字符集,乱码);码点和字符的转换(chr和ord),字符串的编码解码函数(encode,decode)
  • Dockerfile指令
  • JavaScript 实现继承及 Class 本质详解
  • 【Python Web开发】02-Socket网络编程02
  • Java 高频面试题解析
  • Langchain提取结构化数据
  • 第九节:性能优化高频题-首屏加载优化策略
  • JS Array 方法 | 区分 slice 和 splice
  • `rfind()` 从字符串的右侧开始查找指定子字符串首次出现的位置
  • SiamFC算法深度解析
  • 深入浅出:Pinctrl与GPIO子系统详解