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

网站怎么做值班表短视频seo搜索优化

网站怎么做值班表,短视频seo搜索优化,2017做电商做什么网站,培训网站设计师题目 两个有序数组,第一个有序数组m是1000w个元素,第二个有序数组n是1000个元素,求交集,需要考虑时间复杂度和空间复杂度。 解题思路 解法1:遍历小数组n,在m数组中进行折半查找,根据数组有序…

题目

两个有序数组,第一个有序数组m是1000w个元素,第二个有序数组n是1000个元素,求交集,需要考虑时间复杂度和空间复杂度。

解题思路

解法1:遍历小数组n,在m数组中进行折半查找,根据数组有序的特性,每次折半找到数据以后,下次直接再折半就是另外一半数据了,所以时间复杂度是O(nlgm)
解法2:双指针同时遍历两个数组,不相等,小的那个数前进一步,相等都前进一步,时间复杂度是O(m)

代码参考:

这里采用折半查找:

public static void main(String[] args) {int[] m = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9};int[] n = new int[]{2, 5};List<Integer> results = Lists.newArrayList();int left = 0;int right = m.length - 1;for (int i = 0; i < n.length; i++) {while (left < right) {int mid = (right + left) / 2;if (n[i] == m[mid]) {results.add(n[i]);left = mid;right = m.length - 1;break;}if (n[i] > m[mid]) {left = mid;}if (n[i] < m[mid]) {right = mid;}}}System.out.println(results);}

思维拓展

遇到有序的数组解题思路,一般会用到折半和双指针的思想。
比如:[10,9,8,6,5,4,11,12,23] 这种两边大中间小的数据如何排序?思路就是用双指针从左右遍历,每次取一个最大的数。

http://www.mmbaike.com/news/36929.html

相关文章:

  • 政府网站制作建设免费发布产品的平台
  • 简单网站制作谷歌seo排名公司
  • 网站建设和域名备案百度知道官网登录入口
  • 建设网站的语言市场调研报告范文大全
  • 成都网站建设-中国互联今日新闻最新头条10条
  • 网站活动策划怎么做广告推广怎么做最有效
  • 给网站做seo诊断佛山市人民政府门户网站
  • 网址大全查询丈哥seo博客
  • 电子商务平台内的自然人做博客的seo技巧
  • asp.net 做网站文章是怎么存储的狼雨seo网站
  • 树莓派上怎么做网站上海广告公司排名
  • 嘉兴品牌网站建设运营主要做什么工作
  • 做海报素材网站推荐seo矩阵培训
  • 做网站申请域名2022百度收录越来越难了
  • 专业做简历的网站火星培训机构收费明细
  • 网络服务提供者发现未成年通过网络诈骗某网站seo诊断分析
  • 做电源的网站百度网盘客服24小时电话人工服务
  • 如何做好公司网站建设内容企业推广
  • 网站的大图标怎么做跨境电商哪个平台比较好
  • wordpress后台菜单添加设置按钮seo数据分析哪些方面
  • 独立网站建设步骤网络竞价
  • 深圳网站建设费用大概下载百度网盘app
  • 做网站设计需要多少钱近期新闻热点大事件
  • 浏览器直接进入网站在百度怎么发布作品
  • 企业网站怎么推广友情链接怎么添加
  • 利用php做网站百度收录情况查询
  • 北京学网站开发做一个网站要多少钱
  • 爬知乎文章做网站seo学校培训班
  • 网站怎样做seo视频广告
  • 重庆主城区疫情最新消息seo内部优化包括哪些内容