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

合作做网站的总结和心得网站程序包括数据库和网页程序

合作做网站的总结和心得,网站程序包括数据库和网页程序,深圳网站制作十年乐云seo品牌,网站关键词更换了​ day2 2023.11.30 代码随想录 1. 977有序数组的平方 第二天做题就遇到点问题了#xff0c;首先对于该题#xff0c;简单的暴力平方排序肯定没问题#xff0c;但一定不是我们要的最优解#xff0c;我们争取在O(n)的时间复杂度内解决问题#xff0c;发现对于一个初始数组…​ day2 2023.11.30 代码随想录 1. 977有序数组的平方 第二天做题就遇到点问题了首先对于该题简单的暴力平方排序肯定没问题但一定不是我们要的最优解我们争取在O(n)的时间复杂度内解决问题发现对于一个初始数组平方后的最大值一定是在两边的。因此可以同时从两边开始索引处理也就是昨天做的双指针思想。 但是在开始动手后出了问题开始想在原始数组上进行更新但是逻辑理不清。我的想法是对比两个指针的平方较大得更新末尾指针较小的存储在一个temp中用于下一次循环判断感觉思路是可以的但实现起来就有问题首先每次循环需要跟上一次temp判断在两者进行对比。两层if嵌套。。。屎山代码得感觉了。其次在后续更新中也有点问题每次只能更新一个快指针值但会有剩余值无法更新因此该思路哪怕可行但过于繁琐。看了一眼代码随想录正解发现重新定义了个result数组。。。直接傻眼了茅塞顿开。。 因此最终声明两个快慢索引在for循环更新到result中即可代码如下 class Solution { public:vectorint sortedSquares(vectorint nums) {vectorint result(nums.size());int lowindex 0;int fastindexnums.size()-1;for(int inums.size()-1; i0;i--){if(nums[fastindex]*nums[fastindex]nums[lowindex]*nums[lowindex]){result[i] nums[fastindex]*nums[fastindex];fastindex--;}else{result[i] nums[lowindex]*nums[lowindex];lowindex;}}return result;} };2. 209长度最小的子数组 这个题有些难度首先最直观的做法就是暴力循环两层佛如第一层for是子数组内层for是找到符合要求的最小数组尝试写了写该暴力方法测试通过但提交后当数值过大时出现时间超出限制得问题因此显然不是最优解 //暴力遍历法 class Solution { public:int minSubArrayLen(int target, vectorint nums) {int RlengthINT32_MAX;int sum;int SLength;for(int i0;inums.size();i){sum0;SLength0;for(int ji;jnums.size();j){sumnums[j];SLength;if(sumtarget){Rlength SLength Rlength ? SLength:Rlength;break;}}}return RlengthINT32_MAX? 0:Rlength;} };本题真正做法则是滑动窗口法该方法确实不太了解因此直接看代码随想录文字讲解自己在尝试写代码暴力法中两层for代表了数组起始位置和终止位置因此滑动窗口则是一个for解决两个问题那么是该控制起始位置还是终止位置呢显然如果控制起始位置那怎么找终止位置因为找终止位置得过程一定是需要遍历得因此滑动窗口得for循环中心是控制终止位置当然需要通知控制起始位置因此也需要两个指针也是双指针得思想。 class Solution { public:int minSubArrayLen(int target, vectorint nums) {int RLengthINT32_MAX;int sum0;int SLength0;for(int j0, i0;jnums.size();j){sum nums[j];// SLength;while(sumtarget){// SLength--;SLength (j-i1);RLength RLengthSLength ? RLength:SLength;sum -nums[i];}}return RLengthINT32_MAX ? 0:RLength;} };开始我在写代码时使用的是注释掉的方法记录子数组的长度并且在暴力方法时也是这样但这里出现了问题想着如果总和超了起始位置前进时数组长度减一就好了但有一种情况如果现在超了但减一后又不够你如果提前减一在记录长度就有问题长度应该是减一之前的长度记录到这里突然灵光一闪本来放弃了原本记录长度的方法但是突然发现问题所在了尝试将两行代码位置互换先记录长度在减少。就通过啦 class Solution { public:int minSubArrayLen(int target, vectorint nums) {int RLengthINT32_MAX;int sum0;int SLength0;for(int j0, i0;jnums.size();j){sum nums[j];SLength;while(sumtarget){RLength RLengthSLength ? RLength:SLength; //这里SLength--; //这里sum -nums[i];}}return RLengthINT32_MAX ? 0:RLength;} };因此该方法我个人认为有个混淆点就是在前进起始位置时前进与更新长度的顺序问题应该是先更新位置再前进起始位置。while中带等号。 总体表达意思在终止位置固定时哎呦现在子数组之和满足要求了唉那我先记录下来目前的长度再尝试将起始位置前进一下咦依然满足啊那就再前进一下。。。哦不满足啦那最小的就是我上一个记录的啦再比较与不同终止位置时的最小长度更新最终最小长度ok结束 3. 59螺旋矩阵 螺旋矩阵很久之前写过但又忘了借此机会复习一下自己写的时候以为两层for循环更新行列值想了很久该怎么组织逻辑关系理不清最后看代码随想录文字讲解是按照每一圈为一个循环每次循环分为四部–上右下左的顺序赋值达到目的不过变量有点多开始没有写遍历长度这个变量测试通过但当n4时就报错了最后理一遍所有变量 首先每层循环的起始点不一样因此需要两个变量为每次循环提供起始点并在循环结束后加1. 其次二维数组的索引肯定需要两个变量 之后对于n的奇偶不同结果不同如果是偶数则循环为整数不会落单。但如果为奇数比如3想一想一圈处理后只剩中间一个因此需要特殊处理所以需要一个变量代表中间索引 然后肯定需要一个变量控制循环次数也就是要处理几圈。 最后也是我最开始忽略的每一次循环的每一步处理到哪里结束开始以为就是n-1但这是最外圈的如果n大一些比如4在第二圈循环中每一步少两个位置因此减2.所以需要一个控制遍历处理长度的遍历。 最终结果如下 class Solution { public:vectorvectorint generateMatrix(int n) {vectorvectorint result(n, vectorint(n));int startx0,starty0; //位置int loop n/2; //循环几次int count1; //赋值int mid n/2; //单独处理中间int i,j;int length 1;while(loop--){i startx;j starty;for(jstarty;jn-length;j){ //上行左闭右开result[i][j] count;}for(istartx;in-length;i){ //右列 上闭下开result[i][j] count;}for(;jstarty;j--){ //下行右闭左开result[i][j] count;}for(;istartx;i--){ //左列下闭上开result[i][j] count;}startx;starty;length;}if(n%2){result[mid][mid] n*n; //奇数时单独处理}return result;} };
http://www.pierceye.com/news/92338/

相关文章:

  • 常见的网站开发环境网站建设的结构
  • 贵阳网站推广优化公司做网站的公司搞什么活动
  • 安徽平台网站建设制作坪山网站设计的公司
  • 如何做挂qq的网站2017网站建设
  • wordpress语言切换网站保定广告设计公司
  • 做网站需要走公司吗运行一个网站要多少钱
  • 怎样可以免费做网站wap网站软件
  • 织梦手机网站免费模板漳州城乡建设局网站
  • 厦门建设网站的公司php除了写网站吗
  • 如何做全网影视网站居然之家装修公司怎么样
  • 佛山网站建设公司哪家最好万能软文范例800字
  • 网站排名优化如何做wordpress 免费版广告
  • 拓客网站建设建易网官网
  • 网站目录链接怎么做的建网站pc版 (报价)
  • 北京网站制作业务如何开展做网站海报
  • 网站的设计方法有哪些互动网络游戏公司网站建设
  • 公司网站开发制作公司国内重大新闻2022
  • 搜索引擎排名网站北京到广州快递要几天
  • 制作网站怎么制作html网站 下载
  • 深圳网络营销网站设计做个网站哪里可以做
  • 九牛科技网站开发微信营销小型网站建设步骤
  • 分类信息系统网站模板口碑好的网站建设多少钱
  • 米粒网站建设网站开发项目费用预算
  • 12380网站建设的意见建议公司网站维护和更新属于哪个部门
  • 公众号做微网站吗做国外网站的站长
  • 现在网站优化app程序开发定制
  • 德阳网站怎么做seowordpress app 插件
  • 水文化建设网站网站排名优化公司哪家好
  • 网站图片的暗纹是怎么做的做家教中介 不建网站怎么做
  • 学校网站建设价格明细表淮安网站网站建设