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

广州网站建设 骏域网站建设专家展厅装修设计

广州网站建设 骏域网站建设专家,展厅装修设计,百度网站收录,wordpress后台怎么登陆● 今日学习的文章链接和视频链接 ● 自己看到题目的第一想法 1. 704二分法&#xff1a; 方法一&#xff1a; 整个数组是 左闭右闭区间 [ ] left指针指向数组开始下标&#xff0c; right 指针指向数组最后下表nums.size()-1, mid为 (leftright) /2循环条件 left<rightnu…

● 今日学习的文章链接和视频链接

● 自己看到题目的第一想法

1. 704二分法:

方法一:
整个数组是 左闭右闭区间 [ ]

  1. left指针指向数组开始下标, right 指针指向数组最后下表nums.size()-1, mid为 (left+right) /2
  2. 循环条件 left<=right
  3. nums[mid] <target 右移left left = mid+1
    nums[mid] > target 左移right right = mid-1
    nums[mid] = target 返回 mid
    找不到 返回 -1

方法二:
整个数组是 左闭右开区间 [ )

  1. left指针指向数组开始下标, right 指针指向数组最后下表nums.size(), mid为 (left+right) /2
  2. 循环条件 left< right
  3. nums[mid] <target 右移left left = mid+1
    nums[mid] > target 左移right right = mid
    nums[mid] = target 返回 mid
    找不到 返回 -1
2.注意:区间边界问题

整个数组是 左闭右闭区间 [ ]
整个数组是 左闭右开区间 [ )

3.具体代码

方法一:

class Solution {
public:int search(vector<int>& nums, int target) {int left = 0, right = nums.size()-1;while(left<=right){int mid = (left+right)/2;if(nums[mid] == target){return mid;}else if(nums[mid] >target){right = mid-1; }else if(nums[mid]< target){left = mid+1;}else{return mid;}}return -1; }
};

在这里插入图片描述
方法二:

class Solution {
public:int search(vector<int>& nums, int target) {int left =0;int right = nums.size();while(left< right){int mid = (left +right)/2;if(nums[mid] < target){left =mid+1;}else if(nums[mid]  > target){right = mid;}else{return mid ;}}return -1;}
};

在这里插入图片描述

2. 27移除元素

思路

方法一:双指针

  1. 定义下标 快指针fast , 慢指针slow
  2. 循环条件 fast <= nums.size()-1
  3. nums[fast] == val 则fast++;
    nums[fast] != val 则 nums[slow] = nums[fast], slow++, fast++;
    slow最终指向没有val值 数组最后一个元素的下标。

方法二:
4. 定义left =0 right =nums.size()-1
5. 循环条件 left<=right
6. 左边找到nums[left]==val 的下标
右边找到nums[right] !=val 的下标
交换 nums[left] =nums[right] left++; right–;
结果: return left;

class Solution {
public:int removeElement(vector<int>& nums, int val) {int left =0;int right = nums.size()-1;while(left<=right){while(left<=right && nums[left] != val){left++;}while(left<=right && nums[right] == val){right--;}if(left<=right){nums[left] = nums[right];left++;right--;}}return left;}
};

在这里插入图片描述

注意

slow指:更新后 新数组下标
fast 指:寻找新数组的元素

代码
class Solution {
public:int removeElement(vector<int>& nums, int val) {int slow =0;int fast =0;for(fast = 0; fast <nums.size(); fast++){if(nums[fast]  != val){nums[slow] = nums[fast];slow++;}}return slow;}
};

在这里插入图片描述

● 看完代码随想录之后的想法

● 自己实现过程中遇到哪些困难

● 今日收获,记录一下自己的学习时长

http://www.yayakq.cn/news/780721/

相关文章:

  • 网站运营成本电商运营有前途吗
  • 医院网站建设报价表网站对比
  • 网站全屏轮播代码 js小饭店普通装修
  • 长沙网站建设工作室济南做网站互联网公司
  • 网站建设面板在线设计平台市场环境
  • 芮城网站建设网站建设后的效果评估
  • 网站推广的策略制作app步骤
  • 做购物平台网站需要多少资金涿州做网站
  • 做视频网站服务器如何做微信商城网站
  • c 网站开发程序员苏州专业网站建设设计公司哪家好
  • 海南城乡建设厅网站公司网站制作招聘
  • 福州市住房和城乡建设网站烟台开发区住房和建设局网站
  • 网站用模板为什么不利于seo推广建立收费网站
  • 做外单网站有哪些上海美容网站建设
  • 网站栏目怎么做301定向腾讯建设网站视频视频下载
  • 怎么将网站做成html织梦做的网站后台
  • 通化市住房和城乡建设局网站个人主页展示店铺
  • 住房城市建设部门户网站网页设计代码字号px
  • 青岛 机械 中企动力提供网站建设营销型网站建设 代理
  • 宁波网站推广联系方式文登建设局官方网站
  • 网站做文件检查专业做网站技术
  • wordpress购买优化网络工程师
  • 网站设计术语网页生成app怎么用
  • 网站开发神器营销型网站有什么特点
  • 南昌网站空间wordpress自适应 分页
  • 教育系统网站备案wordpress 耗时
  • node框架做网站标签在数据库wordpress
  • 关于网站建设的参考文献个人网站建设
  • 济南网站建设首选传承网络福州短视频seo推荐
  • 学什么可以做推广网站佛山网站建设业务员