代码随想录算法训练营day02| 977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II

977. 有序数组的平方

双指针,新数组用k;

由于已经排序,所以比较两侧数据即可;

class Solution {
public:vector<int> sortedSquares(vector<int>& nums) {vector<int> ans(nums.size());int k = nums.size()-1;int left = 0;int right = nums.size()-1;while(left<=right){if(nums[left]*nums[left] > nums[right]*nums[right]){ans[k] = nums[left]*nums[left];left++;}else{ans[k] = nums[right]*nums[right];right--;}k--;}return ans;}
};

209. 长度最小的子数组

这道题需要注意的就是用while循环,使得sum减小到小于target,一次可能不够;

class Solution {
public:int minSubArrayLen(int target, vector<int>& nums) {int slowindex = 0;int fastindex = 0;int sum = 0;int minlen = INT_MAX;for(;fastindex<nums.size();++fastindex){sum += nums[fastindex];while(sum>=target){minlen = min(minlen, fastindex-slowindex+1);sum-=nums[slowindex];slowindex++;}}return minlen == INT_MAX? 0:minlen;}
};

59. 螺旋矩阵 II

设置四个边界,然后对边界不断缩小,注意边界换的变量要对之前不变的变量进行增减;比如t在第一个遍历中是不变量,第二个遍历中作为变量,就要在此之前++;

class Solution
{
public:vector<vector<int>> generateMatrix(int n){vector<vector<int>> mat(n, vector<int>(n)); int l = 0; int r = n-1; int t = 0;int b = n-1;int tar = n*n; int num = 1;while(num<=tar){for(int i=l;i<=r;++i) mat[t][i] = num++;t++;for(int i=t;i<=b;++i) mat[i][r] = num++;r--;for(int i=r;i>=l;--i) mat[b][i] = num++;b--;for(int i=b;i>=t;--i) mat[i][l] = num++;l++;}return mat;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/892836.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity 语音转文字 Vosk 离线库

市场有很多语音库&#xff0c;这里介绍Vosk SDK 除了支持untiy外还有原生开发服务器等 目录 安装unity示例demo下载语音训练文件运行demo结尾一键三联 注意事项 有可能debug出来的文本是空的&#xff0c;&#xff08;确保麦克风正常&#xff0c;且索引正确&#xff09;分大…

网络网络层ICMP协议

网络网络层ICMP协议 1. ICMP 协议介绍 ICMP&#xff08;Internet Control Message Protocol&#xff09;是 TCP/IP 协议簇中的网络层控制报文协议。用于在 IP 主机、路由器之间传递控制消息&#xff0c;提供可能有关通信问题的反馈信息。 以及用于网络诊断或调试&#xff08;…

Lianwei 安全周报|2025.1.13

新的一周又开始了&#xff0c;以下是本周「Lianwei周报」&#xff0c;我们总结推荐了本周的政策/标准/指南最新动态、热点资讯和安全事件&#xff0c;保证大家不错过本周的每一个重点&#xff01; 政策/标准/指南最新动态 01 美国国土安全部发布《公共部门生成式人工智能部署手…

计算机网络(五)运输层

5.1、运输层概述 概念 进程之间的通信 从通信和信息处理的角度看&#xff0c;运输层向它上面的应用层提供通信服务&#xff0c;它属于面向通信部分的最高层&#xff0c;同时也是用户功能中的最低层。 当网络的边缘部分中的两个主机使用网络的核心部分的功能进行端到端的通信时…

本地用docker装mysql

目录 拉取镜像查看镜像 启动容器查看运行中的容器连接到 MySQL 容器其他一些操作 装WorkBench链接mysql——————————————允许远程登录MySql 拉取镜像 docker pull mysql查看镜像 docker image lsREPOSITORY TAG IMAGE ID CREATED SIZE mysq…

C# PDF下载地址转图片(Base64 编码)

实现思路&#xff1a; 步骤一、根据PDF地址下载pdf文件保存为临时文件&#xff0c;获得pdf文件的byte[]数组 /// 从指定的 URL 下载 PDF 文件public byte[] DownloadPdf(string url){try{using (WebClient client new WebClient()){return client.DownloadData(url);}}catc…

卷积神经02-CUDA+Pytorch环境安装

卷积神经02-CUDAPytorch环境安装 在使用Python进行pytorch的使用过程中遇到各种各样的版本冲突问题&#xff0c;在此进行记录 0-核心知识脉络 1&#xff09;根据自己电脑的CUDA版本安装对应版本的Pytorch&#xff0c;充分的使用GPU性能2&#xff09;电脑要先安装【CUDA ToolKi…

shell 脚本基本练习

一、shell 脚本写出检测 /tmp/size.log 文件如果存在显示它的内容&#xff0c;不存在则创建一个文件将创建时间写入。 1. 创建ex1.sh文件 [rootopenEuler mnt]# vim ex1.sh创建如下&#xff1a; 2. 根据题目编写脚本 n"/tmp/siz.log"if [ -f "$n" ] thenc…

CNN-GRU-MATT加入贝叶斯超参数优化,多输入单输出回归模型

CNN-GRU-MATT加入贝叶斯超参数优化&#xff0c;多输入单输出回归模型 目录 CNN-GRU-MATT加入贝叶斯超参数优化&#xff0c;多输入单输出回归模型预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现贝叶斯优化CNN-GRU融合多头注意力机制多变量回归预测&#xff…

Oracle 分区索引简介

目录 一. 什么是分区索引二. 分区索引的种类2.1 局部分区索引&#xff08;Local Partitioned Index&#xff09;2.2 全局分区索引&#xff08;Global Partitioned Index&#xff09; 三. 分区索引的创建四. 分区索引查看4.1 USER_IND_COLUMNS 表4.2 USER_INDEXES 表 五. 分区索…

​HPM6700——以太网通信lwip_udpecho_freertos_socket

1. 概述 本示例展示在FreeRTOS系统下的UDP回送通讯 PC 通过以太网发送UDP数据帧至MCU&#xff0c;MCU将接收的数据帧回发至PC 2. 硬件设置 使用USB Type-C线缆连接PC USB端口和PWR DEBUG端口 使用以太网线缆连接PC以太网端口和开发板RGMII或RMII端口 3. 工程配置 以太网端…

STC的51单片机LED点灯基于KEIL

前言&#xff1a; 该文源于回答一个朋友的问题&#xff0c;代码为该朋友上传&#xff0c;略作修改&#xff0c;在此说明问题以及解决问题的思路&#xff0c;以减少新手错误。 电路图&#xff1a; 该位朋友未上传电路图&#xff0c;说明如下&#xff1a; stc8g1k08a-sop8控制…

[leetcode]链表基础回顾

一.创建带头节点的链表 #include <iostream> #include <string> #include <algorithm> using namespace std; typedef struct Node { char ch; Node* next; }*LinkList,ListNode; void printLinkList(LinkList& head) { LinkList p head…

深度解析统计学四大分布:Z、卡方、t 与 F 的关联与应用

统计学关键分布&#xff1a;Z、卡方、t、F 的关系探秘与应用指南 A/B实验系列相关文章&#xff08;置顶&#xff09; 1. A/B实验之置信检验&#xff08;一&#xff09;&#xff1a;如何避免误判和漏报 2. A/B实验之置信检验&#xff08;二&#xff09;&#xff1a;置信检验精要…

Cesium在vue3中的简单使用

目录 一、介绍 二、创建和基础配置 2.1 使用vite创建vue3项目 2.2 安装所需依赖 2.3 修改配置文件vite.config.js 2.4 配置路由文件 2.5 使用路由文件 三、使用cesium原本的进行渲染 3.1 渲染效果 3.2 代码实现 3.2.1 默认效果代码 3.2.2 空白地图效果代码 3.2.3 修改默…

【Uniapp-Vue3】使用defineExpose暴露子组件的属性及方法

如果我们想要让父组件访问到子组件中的变量和方法&#xff0c;就需要使用defineExpose暴露&#xff1a; defineExpose({ 变量 }) 子组件配置 父组件配置 父组件要通过onMounted获取到子组件的DOM 传递多个属性和方法 子组件 父组件

三小时深度学习PyTorch

【对新手非常友好】三小时深度学习PyTorch快速入门&#xff01;包教会你的&#xff01; --人工智能/深度学习/pytorch_哔哩哔哩_bilibili从头开始&#xff0c;把概率论、统计、信息论中零散的知识统一起来_哔哩哔哩_bilibili从编解码和词嵌入开始&#xff0c;一步一步理解Trans…

小米vela系统(基于开源nuttx内核)——openvela开源项目

前言 在 2024 年 12 月 27 日的小米「人车家全生态」合作伙伴大会上&#xff0c;小米宣布全面开源 Vela 操作系统。同时&#xff0c;OpenVela 项目正式上线 GitHub 和 Gitee&#xff0c;采用的是比较宽松的 Apache 2.0 协议&#xff0c;这意味着全球的开发者都可以参与到 Vela…

linux系统监视(centos 7)

一.系统监视 1.安装iostat&#xff0c;sar&#xff0c;sysstat&#xff08;默认没有&#xff0c;安装过可以跳跃&#xff09; iostat 和 sar&#xff1a; 同样&#xff0c;iostat 和 sar 是 sysstat 软件包的一部分。使用以下命令安装&#xff1a;sudo yum install sysstat解释…

C#与Vue2上传下载Excel文件

1、上传文件流程&#xff1a;先上传文件&#xff0c;上传成功&#xff0c;返回文件名与url&#xff0c;然后再次发起请求保存文件名和url到数据库 前端Vue2代码&#xff1a; 使用element的el-upload组件&#xff0c;action值为后端接收文件接口&#xff0c;headers携带session信…