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

代码随想录算法训练营第一天 | leetcode 704 27 977

  • 第一题二分查找
    简答回答:经典的二分查找,采用的是左闭右闭区间,主要需要注意的就是右区间的下标
    代码如下:class Solution { public int search(int[] nums, int target) { int left = 0;//左下标 int right = nums.length-1;//右下标 //循环条件 while(left<=right){ //二分查找点 int mid = (left+right)/2; if(nums[mid]==target){ return mid; }else if(nums[mid]<target){ left++; }else{ right--; } } //没找到返回-1 return -1; } }
  • 第二题移除目标元素
    简要回答:因为题目不用在意前k个元素之后的元素,也不要求前k个元素的顺序,所以可以采用双指针解法,把前指针需要移除的元素用后指针满足条件的值直接覆盖
    注意:考虑到数组元素全都是目标元素,需要注意右指针查找满足条件元素时的下标,主要就是注意循环条件的下标
    代码:class Solution { public int removeElement(int[] nums, int val) { int k = 0; int left = 0; int right = nums.length-1; //循环条件,带等号是因为k++是后加 while(left<=right){ if(nums[left]!=val){ k++; left++; }else{ //查找时循环条件 while(right>=left){ if(nums[right]==val){ right--; }else{ nums[left]=nums[right]; right--; break; } } } } return k; } }
  • 第三题 有序数组的平方
    简要回答:我使用的是直接把平方加入到新数组然后对新数组进行排序
    一个新思路:题目数组是非递减的,可以采用双指针比较两端平方的大小,对新数组从后往前进行赋值
http://www.wxhsa.cn/company.asp?id=6505

相关文章:

  • 中文医学基准测试题库数据集:28万条标准化JSON格式医师考试题目与临床案例分析,覆盖28个医学专业领域,用于医学AI模型训练、临床决策支持系统开发、医学知识问答系统构建、医学教育辅助工具优化
  • 函数计算的云上计费演进:从请求驱动到价值驱动,助力企业走向 AI 时代
  • 【SPIE出版】第五届计算机图形学、人工智能与数据处理国际学术会议
  • 快速边缘块稀疏贝叶斯学习MATLAB实现
  • Kubernetes概述与部署
  • XXII Open Cup : Grand Prix of Southeastern Europe
  • GNSS终端授时方式
  • SpringAI接入DeepSeek大模型实现流式对话
  • 通知语音播报功能,解锁全新体验
  • 使用AI容器镜像部署Qwen大语言模型
  • 【IEEE冠名,香港中文大学(深圳)主办)第五届IEEE能源工程与电力系统国际学术会议(IEEE-EEPS 2025)
  • C#实现Access表格自增ID的重置
  • 运用深度学习模型实现图像的分类
  • 设备ONVIF接入平台EasyCVR私有化视频平台级联到海康平台目录丢失根因定位
  • java 通过模板输出word
  • 【设计模式】单例模式 - 实践
  • ubuntu服务器docker容器启动java项目
  • 【2025最新】企业信息模糊搜索API设计与实践指南
  • 一键搞定本土认证难题,AnalyticDB版Supabase助力AI应用实现支付宝微信登录
  • sumifs根据条件求和
  • ubuntu服务器docker安装部署ngix
  • c++右值引用和移动语义
  • 彩笔运维勇闯机器学习--梯度下降法
  • 作业03
  • 项目管理软件产业革命:从工具升级到生产力范式转移
  • vs code运行Java遇到的输入问题
  • 关于数据跨境,你应该了解的合规难题有哪些?
  • 国内开发者如何选择代码管理平台?三大主流工具深度对比
  • doubletrouble wp复盘
  • VAR算法