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

网站开发工具发展史广州手机网站

网站开发工具发展史,广州手机网站,摄影网站源码,wordpress主题破解版二分#xff0c;双指针#xff0c;环形链表。 题目 不看完题就是排序后#xff0c;用两个快慢指针移动#xff0c;找到相同就返回即可。 class Solution {public int findDuplicate(int[] nums) {Arrays.sort(nums);int l0;int r1;while(rnums.length){if(nums[l]num…二分双指针环形链表。 题目 不看完题就是排序后用两个快慢指针移动找到相同就返回即可。 class Solution {public int findDuplicate(int[] nums) {Arrays.sort(nums);int l0;int r1;while(rnums.length){if(nums[l]nums[r])return nums[r];l; r;}return -1;} }但是题要求不修改数组因此肯定不会那么简单。先是二分查找法由题可知nums只有一个重复的数且数字的大小在1到n那么可以直接看nums[i]去遍历每个数值然后用一个计数器去记录i注意假设nums[x]找到了这个数那后面的计数器nums[x1]都是加一的然后二分划分区间没有重复的在左半区重复数后的在右半区重复数就是要找的mid。如果比目标值即重复的数小说明没有跟目标值相等说明刚好一个说明当前没有找到重复的数比目标值大说明就是找到了重复数的区间继续收缩。然后就是二分的模板了注意比较时是比数值不是比索引。 时间复杂度 O(nlogn)空间复杂度 O(1)。 class Solution {public int findDuplicate(int[] nums) {int n nums.length;int l 1, r n - 1, ans -1;while (l r) {int mid (l r) 1;int cnt 0;for (int i 0; i n; i) {if (nums[i] mid) {cnt;}}if (cnt mid) {l mid 1;} else {r mid - 1;ans mid;}}return ans;} }接着是快慢指针龟兔赛跑算法。这题由于索引跟元素值的限定范围假如按索引指向的数值当作下一个索引如此往复是可以形成一个环的即假设走到某个k1点时指向的数值是k然后去到索引k索引k的数值是k2然后k2的数值又是k如此反复这里是可以形成一个环的而这个k1时就是环的入口点也是要找的重复值。然后用快慢指针慢指针每次走一步快指针每次走两步相遇一次后做标记慢指针归零从新出发快指针从环里出发然后再次相遇即可找到入口点了。慢指针走一步 slow slow.next快指针走两步 fast fast.next.next换成数组就是包多一层即可。注意要排除形成自环即索引的数值是本身因此从零出发可以排除。 时间复杂度 O(n)空间复杂度 O(1)。 class Solution {public int findDuplicate(int[] nums) {int slow 0, fast 0;//初始化是相等的所以先执行第一次相遇找到标记点do {slow nums[slow];fast nums[nums[fast]];} while (slow ! fast);//慢指针重新出发快指针继续在环里走slow 0;while (slow ! fast) {slow nums[slow];fast nums[fast];}return slow;} }
http://www.w-s-a.com/news/307313/

相关文章:

  • 建设在线购物网站淮南电商网站建设价格
  • 龙泉市旅游门户网站建设wordpress faq插件
  • 网站的流程图贵阳做网站方舟网络
  • c 做网站开发实例wordpress 加上index
  • 济南seo网站推广搜索广告推广
  • 有关于网站建设的参考文献宁波seo网络推广公司
  • 网站设配色个人主页介绍文案
  • 网站seo相关设置优化网站建设的好处
  • 上海市建设工程安全生产协会网站郴州网站设计公司
  • 网站大型网页游戏自己搭建服务器做视频网站
  • 建立网站企业wordpress用户名密码破解
  • 网站管理助手建站教程国外网站做acm题目比较好
  • 网站开发框架排行专业网页制作服务商
  • 企业网站建设入账政务网站建设信息
  • 网络平台建设是什么江门排名优化怎么做
  • 响应式旅游网站模板下载网址做
  • 个人做网站名称可以随意更改吗惠州网站推广排名
  • 自己建设一个网站步骤网站认证怎么认证
  • 深圳建站公司开发费用沧州手机建站哪家好
  • 兰州网站设计公司排名百度怎么发布短视频
  • 大连模板开发建站泰州网站建设策划方案
  • 厦门好的网站设计局域网内建网站
  • 关键词那种网站正版网页游戏平台排行榜
  • 网站自助建设平台创建网址快捷方式
  • 坑梓网站建设包括哪些成都网站建设优创
  • 重庆网站seo公司哪家好超级优化大师
  • 成都网站建设推广详情邵阳市住房和城乡建设局网站
  • 淄博网站推广猎头公司有哪些
  • 局域网内建立网站90设计网怎么样
  • 域名备案和网站备案有什么不同工程项目建设网站