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

网站开发中 即将上线广州天河区做网站

网站开发中 即将上线,广州天河区做网站,广告效果图用什么软件做,免费客户销售管理软件数组基础 1、数组定义#xff1a;数组是存放在连续内存空间上的相同类型数据的集合。 特点#xff1a; 数组下标都是从0开始的。数组内存空间的地址是连续的 2、数组的元素是不能删的#xff0c;只能覆盖。 704. 二分查找 1、题目链接#xff1a;. - 力扣#xff08…数组基础 1、数组定义数组是存放在连续内存空间上的相同类型数据的集合。 特点 数组下标都是从0开始的。数组内存空间的地址是连续的 2、数组的元素是不能删的只能覆盖。 704. 二分查找 1、题目链接. - 力扣LeetCode 2、文章讲解代码随想录 3、视频讲解手把手带你撕出正确的二分法 | 二分查找法 | 二分搜索法 | LeetCode704. 二分查找_哔哩哔哩_bilibili 4、题目 给定一个 n 个元素有序的升序整型数组 nums 和一个目标值 target 写一个函数搜索 nums 中的 target如果目标值存在返回下标否则返回 -1。 示例 1: 输入: nums [-1,0,3,5,9,12], target 9 输出: 4 解释: 9 出现在 nums 中并且下标为 4 示例 2: 输入: nums [-1,0,3,5,9,12], target 2 输出: -1 解释: 2 不存在 nums 中因此返回 -1 提示 你可以假设 nums 中的所有元素是不重复的。n 将在 [1, 10000]之间。nums 的每个元素都将在 [-9999, 9999]之间。 5、前提条件数组为有序数组数组中无重复元素 5、难点对区间的定义没有想清楚区间的定义就是不变量 6、遵循点保证循环不变量原则要不左闭右闭要不左闭右开 左闭右闭写法 时间复杂度O(log n)空间复杂度O(1) class Solution {public int search(int[] nums, int target) {// 左闭右闭写法int left 0;int right nums.length - 1;while (left right) {// 计算中间索引// int middle (left right) / 2;// 防止溢出int middle left (right - left) / 2;if (nums[middle] target) {// 左区间left middle 1;} else if (nums[middle] target) {// 右区间right middle - 1;} else {// 找到了return middle;}}// 没找到return -1;} } 左闭右开写法 时间复杂度O(log n)空间复杂度O(1) class Solution {public int search(int[] nums, int target) {// 左闭右开写法int left 0;int right nums.length;while (left right) {// 计算中间索引// int middle (left right) / 2;// 防止溢出int middle left (right - left) / 2;if (nums[middle] target) {// 左区间left middle 1;} else if (nums[middle] target) {// 右区间right middle;} else {// 找到了return middle;}}// 没找到return -1;} } 27. 移除元素 1、题目链接. - 力扣LeetCode 2、文章讲解代码随想录 3、视频讲解数组中移除元素并不容易 | LeetCode27. 移除元素_哔哩哔哩_bilibili 4、题目 给你一个数组 nums 和一个值 val你需要 原地 移除所有数值等于 val 的元素并返回移除后数组的新长度。 不要使用额外的数组空间你必须仅使用 O(1) 额外空间并原地修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums [3,2,2,3], val 3, 函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。 你不需要考虑数组中超出新长度后面的元素。 示例 2: 给定 nums [0,1,2,2,3,0,4,2], val 2, 函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。 你不需要考虑数组中超出新长度后面的元素。 4、前提条件不要使用额外的数组空间你必须仅使用 O(1) 额外空间并原地修改输入数组元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 5、注意点数组的元素在内存地址中是连续的不能单独删除数组中的某个元素只能覆盖。 暴力解法 时间复杂度O(n^2)空间复杂度O(1) class Solution {// 暴力解法public int removeElement(int[] nums, int val) {// 定义返回数组长度变量int size nums.length;// 1.先遍历数组for (int i 0; i nums.length; i) {// 2.找到要删除的元素if (nums[i] val) {// 3.将后面元素依次前移for (int j i 1; j nums.length; j) {nums[j - 1] nums[j];}// 4.将数组长度减一i--;// 5.将返回数组长度减一size--;}}// 6.返回数组的长度return size;} } 双指针解法 1、 通过一个快指针和慢指针在一个for循环下完成两个for循环的工作。 2、定义快慢指针 快指针寻找新数组的元素 新数组就是不含有目标元素的数组慢指针指向更新 新数组下标的位置 时间复杂度O(n)空间复杂度O(1) class Solution {// 双指针解法public int removeElement(int[] nums, int val) {// 定义慢指针int slow 0;// 定义快指针for (int fast 0; fast nums.length; fast) {// 如果快指针指向的元素不等于要删除的元素,则将快指针指向的元素赋值给慢指针指向的元素if (nums[fast] ! val) {nums[slow] nums[fast];slow;}}return slow;} }
http://www.zqtcl.cn/news/675264/

相关文章:

  • 惠州定制网站制作推荐chinacd wordpress第三性
  • 网站建设从初级到精通网站开发成本预算价目表
  • 网站程序开发上海高端网站开发站霸网络
  • 企业网站对网络营销的意义环保材料 技术支持 东莞网站建设
  • 房地产网站建设价格买卖网站
  • 网站宣传方案开发专业网站
  • 电子商务+网站建设wordpress首页幻灯
  • 网站建设表格的属性学校网站建设命名
  • 清远网站建设自学网站开发要多久
  • 可信网站 quot 验证能防范哪些安全.教育类app开发价格表
  • 网站设计服务流程深圳网站设计公司费用大概多少
  • 邮件网站怎么做的本地计算机做网站服务器
  • 自己建的网站打不开html5 手机网站 模版
  • 网站建设跟网站结构如何提高网站排名的方法
  • 网站模板 缓存商标网上开店创业计划书
  • 沧州网站建设微艾薇怎样给企业做网站
  • 如何做淘宝客的网站个人网站设计与制作代码
  • 信用门户网站建设观摩惠州专业做网站
  • wordpress打开网站前广告佛山百度推广seo服务
  • 松北建设局网站vps 用ip可以访问网站么
  • 网站图片内容免费开源crm
  • wordpress调用分类栏目wordpress文章优化
  • 建站公司上海企业官网模板下载
  • 网站建设推广话术wordpress 不显示缩略图
  • 企业电子商务网站建设和一般百拓公司做网站怎么样
  • 吉林网站建设司上海什么做网站的公司比较好
  • 吉安市建设规划局网站jsp wordpress
  • 建设银行贵金属网站微信小程序注册后怎么使用
  • 如何做律师网站河南建网站 优帮云
  • 云阳如何做网站网站建设旅游