每日两题 / 189. 轮转数组 560. 和为 K 的子数组(LeetCode热题100)

news2024/11/26 3:09:01

189. 轮转数组 - 力扣(LeetCode)
image.png

向右轮转将使尾部k个元素顶到头部
将整个数组反转,再分别反转前k个元素和剩下的元素即可

class Solution {
public:
    void rotate(vector<int>& nums, int k) {
        k %= nums.size();
        reverse(nums.begin(), nums.end());
        reverse(nums.begin(), nums.begin() + k);
        reverse(nums.begin() + k, nums.end());
    }
};

考虑直接将元素向后移动k位,因为移动覆盖将导致数据丢失,所以我们需要将“即将被覆盖的数据”保存起来
需要移动的次数?k %= 数组长度,数组长度 / k + 1就是需要移动的次数
对前k - 1个数进行移动即可


560. 和为 K 的子数组 - 力扣(LeetCode)
image.png

前缀和+查找,用mp记录每个位置上的前缀和出现了几次
若当前的前缀和为pre,则ans += mp[pre - k]
需要注意的是,0个元素的前缀和为0

class Solution {
public:
    int subarraySum(vector<int>& nums, int k) {
        int pre = 0, ans = 0;
        unordered_map<int, int> mp;
        mp[0] ++ ;
        for (int i = 0; i < nums.size(); ++ i)
        {
            pre += nums[i];
            ans += mp[pre - k];
            mp[pre] ++ ;
        }
        return ans;
    }
};

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

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

相关文章

RHCE2

一.配置server主机要求如下&#xff1a; 1.server主机的主机名称为 ntp_server.example.com //修改主机名 hostnamectl set-hostname ntp_server.example.comreboot 修改主机名后一定要记住重启。 2.server主机的IP为&#xff1a; 172.25.254.100 //主机ip配置 [rootntpse…

Java实现生成中间带图标的二维码

Java实现生成中间带图标的二维码 生成Base64格式的二维码&#xff0c;返回html渲染 package your.package;import com.google.zxing.*; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcod…

【Go语言快速上手(二)】 分支与循环函数讲解

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:Go语言专栏⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多Go语言知识   &#x1f51d;&#x1f51d; Go快速上手 1. 前言2. 分支与循环2.1…

传统零售行业如何做数字化转型?

传统零售行业的数字化转型是一个系统性的过程&#xff0c;涉及到企业的多个方面。以下是一些关键步骤和策略&#xff0c;帮助传统零售企业实现数字化转型&#xff1a; 1、明确转型目标和战略 首先&#xff0c;企业需要明确数字化转型的目标和战略。包括确定企业的核心竞争力、…

生成对抗网络GAN的扩展应用理解

注&#xff1a;本文仅个人学习理解&#xff0c;如需详细内容请看原论文&#xff01; 一、cycleGAN 1.整体架构&#xff1a; 将图片A通过生成器生成图片B&#xff0c;然后通过判别器判别图片B的真假&#xff1b;并且图片B通过另一个生成器生成A‘&#xff0c;让A和A’近似。 2…

Linux 操作系统指令和Vscdoe安装

1、Linux系统介绍 Linux系统的背景介绍我就不介绍了&#xff0c;有兴趣的可以去看看其发展史。 1.1 Linux操作系统的主要特点 Linux操作系统的重要思想&#xff1a;一切皆文件 Linux操作系统的特性&#xff1a; 完全免费 支持多平台 支持多用户、多任务 有良好的界面 完美兼容…

EVI增强型植被指数

​随着遥感技术的发展&#xff0c;我们对地球上的植被状况有了更深入的了解&#xff0c;而其中一种重要的工具就是EVI&#xff08;Enhanced Vegetation Index&#xff0c;增强型植被指数&#xff09;。EVI不仅是一种植被指数&#xff0c;更是一种对植被生态系统健康和生产力评估…

Biome 1.7 发布,支持从 ESLint 和 Prettier 迁移

近日&#xff0c;Biome v1.7 正式发布&#xff01;这个新版本提供了从 ESLint 和 Prettier 迁移的简单路径。它还引入了格式化程序和 linter 的实验性机器可读报告、新的 linter 规则和许多修复。 使用以下命令更新 Biome&#xff1a; npm install --save-dev --save-exact b…

中科国声携新品亮相北京InfoComm China 2024展

4月17日&#xff0c;北京InfoComm China 2024展&#xff08;北京专业视听技术和集成体验解决方案展览会&#xff09;在北京的国家会议中心盛大开幕。展会为期三天。作为备受瞩目的”会议系统国家队“&#xff0c;中科国声携众多优质会议音频产品及全新会议系统解决方案精彩亮相…

隧道中心线提取

作者&#xff1a;迅卓科技 简介&#xff1a;本人从事过多项点云项目&#xff0c;并且负责的项目均已得到好评&#xff01; 公众号&#xff1a;迅卓科技&#xff0c;一个可以让您可以学习点云的好地方 重点&#xff1a;每个模块都有参数如何调试的讲解&#xff0c;即调试某个参数…

黑洞路由、 DDoS 攻击 、 环路

黑洞路由 DDoS 攻击 DDoS 攻击是一种针对服务器、服务或网络的恶意行为。DDoS 攻击通过向目标发送大量流量&#xff0c;使其不堪重负&#xff0c;导致资源和带宽被耗尽。因此&#xff0c;目标可能会变慢或崩溃&#xff0c;无法正常处理合法的流量。DDoS 攻击通常是由僵尸网络…

PMP知识点太多不知道怎么下手咋办?

项目经理知识人人都能学&#xff0c;可以说只要掌握了PMP项目管理体系知识&#xff0c;人人都能是项目经理。但是PMP的知识体系中知识点非常系统化&#xff0c;也非常细化&#xff0c;在认证考试时考点也比较松散&#xff0c;180题就覆盖了好几本PMP考试参考资料。 那么&#…

论文精读 MOG2系列 OpenCV源码提供的论文

本篇博客首先讲述Opencv库中MOG和MOG2的来源&#xff0c;然后对MOG2的一篇论文进行翻译。 图1. OpenCV官网 MOG 算法来自一篇论文&#xff1a; An Improved Adaptive Background Mixture Model for Real-time Tracking with Shadow Detection. 一种用于阴影检测实时跟踪的改进自…

Crossref

https://baijiahao.baidu.com/s?id1766583173146005960&wfrspider&forpc https://zhidao.baidu.com/question/1796197318615421547.html

2024.4.14 机器学习周报

目录 引言 Abstract 文献阅读 1、题目 2、引言 3、过去方案 4、创新点 5、方法 6、混合CNN-LSTM模型 7、实验过程 8、实验结果与评价 深度学习 通过VGG实现图片分类 1.data.py文件&#xff0c;用于处理数据 2.txt.py 将指定文件夹中的特定类型的图片路径和对应的…

如何在 MySQL 中开启日志记录并排查操作记录

在数据库管理中&#xff0c;能够追踪和审查操作记录是至关重要的。这不仅有助于识别和分析正常的数据库活动&#xff0c;还可以在数据泄露或未经授权的更改发生时进行调查和响应。本文将介绍如何在 MySQL 中开启通用日志记录&#xff0c;并如何排查操作记录。 开启 MySQL 通用…

双臂复合机器人平台叠方块例程使用与自启设置

睿尔曼双臂升降复合机器人平台&#xff0c;旨在为机器人教育提供强大的实训平台&#xff0c;该平台全自主研发&#xff0c;实现机器人建图导航、路径规划&#xff0c;机械臂运动学、动力学、轨迹规划、视觉识别等算法和应用&#xff0c;提供开放式的软件框架&#xff0c;为教学…

使用rsync同步备份linux文件内容到windows客户端

把数据库文件、视频、图片文件同步备份到其他机器上是不可缺少的环节&#xff0c;没有备份机制就是耍流氓。 远程linux服务器端安装rsync debian | ubuntu 系统 sudo apt install rsynccentos系统 sudo yum install rsync创建rsync用户和组 sudo adduser --system --group…

读天才与算法:人脑与AI的数学思维笔记03_AlphaGo

1. 国际象棋 1.1. 1997年计算机“深蓝”&#xff08;Deep Blue&#xff09;击败了顶尖国际象棋手&#xff0c;但机器取代数学研究机构还言之尚早 1.2. 下国际象棋与数学的形式化证明颇有相似之处&#xff0c;但学者认为中国围棋的思维方式更能够体现数学家思考的创造性和直觉…

Vue_管道符“|”(单竖线)的用处

目录 1、管道符是什么 2、应用场景 背景&#xff1a;项目中偶遇在 {{ }} 插值表达式里用了 “&#xff5c;”此写法&#xff0c;一开始误以为是写错了&#xff0c;应该是写成 “&#xff5c;&#xff5c;” 双竖线&#xff08; 逻辑或运算符 &#xff09;&#xff0c;结果询问…