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

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.xdnf.cn/news/10417.html

相关文章:

  • 网页前端开发(基础进阶2)
  • 多线程( Thread)
  • Python训练打卡Day39
  • 电子电路:时钟脉冲与上升沿的详细解析
  • CppCon 2014 学习:ASYNCHRONOUS COMPUTING IN C++
  • ssm 学习笔记day03
  • OVD开放词汇检测 Detic 训练COCO数据集实践
  • 28 C 语言作用域详解:作用域特性(全局、局部、块级)、应用场景、注意事项
  • 【Java学习笔记】枚举
  • 怎么更改cursor chat中的字体大小
  • XCPC 常用技巧
  • Beta分布Dirichlet分布
  • [Python] Python中的多重继承
  • 飞牛fnNAS装机之迷你小主机的利旧
  • SolidWorks软件的安装与卸载
  • 12 Java GUI
  • Word双栏英文论文排版攻略
  • 【解决】【亲测下载obsidian可行】打不开github.com 或者 加速访问 github
  • Pull Request Integration 拉取请求集成
  • Python实现HPSO-TVAC优化算法优化支持向量机SVC分类模型项目实战
  • QT/c++航空返修数据智能分析系统
  • 重读《人件》Peopleware -(15)Ⅱ 办公环境 Ⅷ 撑伞之步:构建理想办公环境(上)
  • 数据中台(大数据平台)之数据安全管理
  • InternVL2.5-多模态大模型评估专业图片
  • Python爬虫:AutoScraper 库详细使用大全(一个智能、自动、轻量级的网络爬虫)
  • 从模式到架构:Java 工厂模式的设计哲学与工程化实践
  • 【办公类-22-05】20250601Python模拟点击鼠标上传CSDN12篇
  • 开始使用 Elastic AI Assistant for Observability 和 Amazon Bedrock
  • 接口自动化常用断言方式
  • 小明的Java面试奇遇之商城系统的技术挑战与实战