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

建设网站找哪家cpa自己做网站

建设网站找哪家,cpa自己做网站,wordpress归档侧边栏按分类,新网站怎么做优化本文为Python算法题集之一的代码示例 题目560#xff1a;和为K的子数组 说明#xff1a;给你一个整数数组 nums 和一个整数 k #xff0c;请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1#xff1a; 输入#xff1a;nu…本文为Python算法题集之一的代码示例 题目560和为K的子数组 说明给你一个整数数组 nums 和一个整数 k 请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1 输入nums [1,1,1], k 2 输出2示例 2 输入nums [1,2,3], k 3 输出2提示 1 nums.length 2 * 104-1000 nums[i] 1000-107 k 107 - 问题分析 本题为求子数组和为K子数组为非空的连续元素 主要的计算为两个1是元素求和而是比较和与K 基本的遍历为双层循环从第一个元素开始计算从此元素开始有多少次和为K所以基本的时间算法复杂度为On2 - 优化思路 优化的思路一是减少计算次数二是减少检索次数和提升检索效率 标准的优化思路前缀和【从第1个元素累加到第n个元素的和称为第n个前缀和】只要出现2个前缀和的差k则这两个下标之间的数组即满足要求 进一步优化第n个元素前缀和为isum_n则1至n-1如果有x个前缀和为k-isum_n则第n个元素可以在1至n-1之间形成x个和为k的子数组 以上优化都是考虑前缀和差因此对于nums只有一个元素的情况要单独进行处理 标准版【双循环】毫无疑问直接超时 注意 CheckFuncPerf是我写的函数用时和内存占用模块地址在这里测量函数运行用时、内存占用的代码单元CheckFuncPerf.py以及使用方法测试的超长nums文件是官网的已经上传到CSDN地址在这里和为K的子数组测试用超长数组 import CheckFuncPerf as cfpdef subarraySum_base(nums, k):result0for iIdx in range(len(nums)):iSum nums[iIdx]if iSum k:result 1for jIdx in range(iIdx1, len(nums)):iSum nums[jIdx]if iSum k:result 1return resulttestcase_big1 open(rtestcase/hot10_big1.txt, moder, encodingutf-8).read().replace([, ).replace(], ) testcase_big1 testcase_big1.split(,) nums [int(x) for x in testcase_big1] k 714result cfp.getTimeMemoryStr(subarraySum_base, nums, k) print(result[msg], 执行结果 {}.format(result[result])) # 运行结果 函数 subarraySum_base 的运行时间为 10591.62 ms内存使用量为 4.00 KB 执行结果 40优化版【提前计算前缀和直接计算前缀和之差】有想法然并卵超时依旧 import CheckFuncPerf as cfpdef subarraySum_ext1(nums, k):if len(nums)1:if nums[0] k:return 1else:return 0isumpref[0] * len(nums)iSum 0for iIdx in range(len(nums)):iSum nums[iIdx]isumpref[iIdx] iSumresult0for iIdx in range(len(nums)):if iIdx0 and nums[iIdx] k:result 1if isumpref[iIdx] k:result 1for jIdx in range(iIdx1, len(nums)):if isumpref[jIdx]-isumpref[iIdx] k:result 1return resulttestcase_big1 open(rtestcase/hot10_big1.txt, moder, encodingutf-8).read().replace([, ).replace(], ) testcase_big1 testcase_big1.split(,) nums [int(x) for x in testcase_big1] k 714result cfp.getTimeMemoryStr(subarraySum_ext1, nums, k) print(result[msg], 执行结果 {}.format(result[result])) # 运行结果 函数 subarraySum_ext1 的运行时间为 10508.87 ms内存使用量为 732.00 KB 执行结果 40优化改进版【单层循环将到第n个元素的所有前缀和的计数存入字典】优化所见略同仅超越68% import CheckFuncPerf as cfpdef subarraySum_ext2(nums, k):dictsumpref {}isum, iresult 0, 0for num in nums:isum numif isum k:iresult 1if isum - k in dictsumpref:iresult dictsumpref[isum - k]dictsumpref[isum] dictsumpref.get(isum, 0) 1return iresulttestcase_big1 open(rtestcase/hot10_big1.txt, moder, encodingutf-8).read().replace([, ).replace(], ) testcase_big1 testcase_big1.split(,) nums [int(x) for x in testcase_big1] k 714result cfp.getTimeMemoryStr(subarraySum_ext2, nums, k) print(result[msg], 执行结果 {}.format(result[result])) # 运行结果 函数 subarraySum_ext2 的运行时间为 3.99 ms内存使用量为 160.00 KB 执行结果 40一日练一日功一日不练十日空 may the odds be ever in your favor ~
http://www.pierceye.com/news/981818/

相关文章:

  • 快速设计一个网站网站h标签
  • 怎么做百度联盟网站前端面试题
  • 电子商务网站建设的基本要求wordpress提问
  • 论坛网站制作费用wordpress如何调用html代码
  • 打码兔怎么和网站做接口重庆网站建设找承越
  • 做海报的网站什么编辑器微楼书网站建设
  • 免费建站的网站能做影视网站吗深圳网站建设素材网站
  • 网页中网站设计规划流程wordpress主题
  • 贵阳百度做网站电话培训学校
  • 网站关键词推广哪家好深圳方维网络科技有限公司
  • 美工需要的网站阿里云wordpress托管
  • 医疗行业网站建设怎样在网上建立平台
  • 潍坊网站建设网超之梦做的网站后台修改栏目描述
  • 广西建设厅官网证件查询网站优化对企业有什么好处
  • 哪个网站做外贸的多济南建设信息网官网
  • 制作网站能挣钱企业宣传片策划公司
  • 临沂网站建设模板wordpress添加导航页面
  • 有关wordpress教学的网站商标注册号
  • 常用搜索网站浙江立鹏建设有限公司网站
  • 天津做网站优化的公司番禺商城网站建设
  • 网站建设大熊猫点搜营销型网站头部布局的元素
  • wordpress 网站死机淄博专业网站建设价格
  • 网站建设 招标书慈溪机械加工网
  • dede网站怎么做404页面做网站的市场有那么大吗
  • 自己做下载类网站家在深圳网页版
  • 建设银行网站个人客户传奇新服网
  • 河东手机网站建设工作服厂家联系方式
  • 站长工具seo综合查询搭建流程
  • 各省住房和城乡建设厅网站怎样租用个人网站空间
  • 深圳市南山区住房和建设局网站官网桂林两江四湖象山景区讲解导游词