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

一周一总结

本周我们解析了5个算法题

二分查找

移除元素

有序数组平方

最小子数组

螺旋矩阵

一、二分查找

  • 数组是有序的!
  • while循环的结束条件为left<=right
  • mid更新为 left + ((right - left)>>1)
  • left 更新为 mid + 1;
  • right 更新为 mid - 1;

二、移除元素

  • 采用双指针法。
  • left 指针始终指向 目标元素
  • right 指针始终指向 非目标元素
  • 最后返回结果为 left;

三、有序数组平方

  • 采用双指针法:指针为一头一尾。
  • left 为头指针
  • right 为尾指针
  • left 指向元素与right 指向元素的平方进行对比
  • 结果数据以尾填充的方式加入到新数组中以保证有序。

四、长度最小的子数组

  • 采用双指针法用来控制滑动窗口的长度(子数组的长度)
  • 当sum(子数组之和) >= target(目标值)
  • 采用while循环以保证子数组的长度是最小的。
  • return result == nums.length + 1 ? 0:result;

五、螺旋矩阵

  • 螺旋数组要分为奇数和偶数两种情况
  • 奇数最后要对中心进行填充,偶数则直接形成螺旋数组
  • 需要两个循环:外层循环次数 = n /2,内层循环形成螺旋状
  • 其中start 变量是用来控制每次填充的位置! 可以说是循环的每一圈,最开始的位置坐标是start

相关文章:

  • wordpress 分類/交换友情链接的方法
  • 网站icp备案去哪办理/厦门seo网站优化
  • 做水果生意去那个网站/网络推广引流是做什么的
  • 青岛网站开发哪家服务专业/网络营销师培训费用是多少
  • 国外真人做爰直播聊天平台网站/郑州网站建设
  • 苏州工业园区疾病防治中心/seo属于运营还是技术
  • Hadoop 3.x(MapReduce)----【MapReduce 框架原理 五】
  • 实验三.局域网的组建
  • 【C++】打怪升级——通关类和对象(下)
  • 基于小波的图像边缘检测,小波变换边缘检测原理
  • Git 学习笔记
  • QFramework v1.0 使用指南 工具篇:01. QFramework.Toolkits 简介
  • JS(第六课)流程控制语句
  • REACT:react-router-dom详解
  • 【AI】Best-first search (or Greedy Search) 最佳优先搜索(或贪婪搜索)
  • android手机免费无线投屏电脑方法教程步骤AirServer7
  • 【PyTorch深度学习项目实战100例】—— 基于BiGRU短期电力负荷预测方法 | 第28例
  • STM32:串口协议(内含:1.通信接口+2.串口通信+3.硬件电路+4.电平标准+5.串口参数及时序+6.串口时序)