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

724.寻找数组的中心下标前缀和

题目链接:

https://leetcode.cn/problems/find-pivot-index/

这道题目我们可以使用暴力解法,就一个下标前数组之和,再求一个下标后数组之和,时间复杂度达到n方,我们来写一下:

    int pivotIndex(vector<int>& nums) {//遍历数组每个元素for (int i = 0; i < nums.size(); i++){//求该下标的前缀之和int sum1 = 0;int sum2 = 0;for (int j = 0; j < i; j++){sum1 += nums[j];}//求该下标后缀之和for (int k = i + 1;k < nums.size(); k++){sum2 = sum2 + nums[k];}if (sum1 == sum2)return i;}return -1;}

也可以使用前缀和:先创建两个数组,一个数组记录下标的前缀之和,一个数组记录下标的后缀之和,前缀之和从前面开始,后缀之和从后面开始。

完成之后我们再进行遍历比较相等,前缀和等于后缀和,我们返回。否则返回-1;

   int pivotIndex(vector<int>& nums) {vector<int>num1(nums.size());vector<int>num2(nums.size());num1[0]=0;num2[nums.size()-1]=0;for(int i=1;i<nums.size();i++){num1[i]=num1[i-1]+nums[i-1];}for(int i=nums.size()-2;i>=0;i--){num2[i]=num2[i+1]+nums[i+1];}for(int i=0;i<nums.size();i++)if(num1[i]==num2[i])return i;return -1;}

http://www.dtcms.com/a/225419.html

相关文章:

  • 《Python基础》第2期:环境搭建
  • 某航后缀混淆逆向与顶像风控分析
  • 循环流化床锅炉关键技术设计与优化路径
  • 【第四十七周】HippoRAG 2 复现与分析(一):环境部署与代码分析
  • 医疗数理范式化:从范式迁移到认知革命的深度解析
  • 怎样在PyQt5中使用信号与槽机制?
  • 开始使用 Elastic AI Assistant for Observability 和 Amazon Bedrock
  • 六月一日python-AI代码
  • Python UV 环境下的 PyKDL 运动学库安装
  • 定时任务:springboot集成xxl-job-core(一)
  • 14.Wifi模组(ESP8266)
  • 过滤攻击-隐私保护
  • 设计模式-行为型模式-模版方法模式
  • 【课堂笔记】生成对抗网络 Generative Adversarial Network(GAN)
  • 图像处理篇---face_recognition库实现人脸检测
  • Vue3+SpringBoot全栈开发:从零实现增删改查与分页功能
  • 字节golang后端二面
  • 用dayjs解析时间戳,我被提了bug
  • 在IIS上无法使用PUT等请求
  • 基于机器学习的心脏病预测模型构建与可解释性分析
  • 西瓜书第十章——聚类
  • buuctf-web
  • unix/linux source 命令,其历史争议、兼容性、生态、未来展望
  • 在Flutter中定义全局对象(如$http)而不需要import
  • JVM学习(七)--JVM性能监控
  • Tomcat优化篇
  • ASP.NET Core SignalR 身份认证集成指南(Identity + JWT)
  • Axure组件即拖即用:垂直折叠菜单(动态展开/收回交互)
  • APM32主控键盘全功能开发实战教程:软件部分
  • 【Java基础】Java入门教程