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

浙江建筑信息网站经典软文案例标题加内容

浙江建筑信息网站,经典软文案例标题加内容,那些网站hr可以做兼职,两题一做的网站解题思路&#xff1a; \qquad 对每个数nums[i]&#xff0c;仅需在数组中搜索target-nums[i]是否存在。 优化思路&#xff1a; \qquad 首先能想到&#xff0c;利用哈希表O(1)查询target-nums[i]。 \qquad 建立map<int, vector<int>>的表能够处理重复元素&#x…

在这里插入图片描述
解题思路:
\qquad 对每个数nums[i],仅需在数组中搜索target-nums[i]是否存在。

优化思路:
\qquad 首先能想到,利用哈希表O(1)查询target-nums[i]
\qquad 建立map<int, vector<int>>的表能够处理重复元素,保证找到所有解。但是,能否进一步优化?

\qquad 观察题目假设,每个输入只有一种解,对于nums[i] == nums[j]的情况,当遍历到nums[j]时,只要二者的和=目标,即可直接输出无需再存入表中,如果和不满足且后面存在合理的解,那么无论输出i还是j都成立。所以建立的表无需处理重复的情况,可建表map<int,int>

\qquad 到这里,思路已经足够简洁,但是能否进一步优化代码实现提高运行速度?

优化代码:
\qquad 1)使用unordered_map

mapunordered_map
特点有顺序(key升序)元素排列无顺序
实现方式红黑树哈希表(散列表)
时间效率O(logn)O(1)
存储效率接近100%表中存在未使用的值
稳定性分析平衡二叉树,十分稳定O(logn)不稳定,最快O(1),最坏O(n)【冲突过多时】
头文件<map><unordered_map>

\qquad 注:写题大多时候适用 unordered_map,当对查询稳定性要求高、需要排序时用map。

\qquad 2)虽然函数返回值为vector<int>,但已知返回长度,可以不建立数组,直接返回{num1,num2}

vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int,int> m;int n = nums.size();for(int i = 0; i < n; i++){if(m.count(target - nums[i]) == 0){m[nums[i]] = i;}else{return {i, m[target - nums[i]]};}}return {};}

参考博客:
https://blog.csdn.net/JCjunior/article/details/107471425
https://blog.csdn.net/qq_45890970/article/details/123955261

http://www.wangmingla.cn/news/49146.html

相关文章:

  • 平台客服怎么联系淄博搜索引擎优化
  • 上海哪个公司做网站好青岛网站seo推广
  • 做app网站的软件有哪些内容吗免费seo网站自动推广
  • 夹江企业网站建设报价网络营销的未来发展趋势论文
  • 海南什么公司的网站解析域名网站
  • 广东 网站建设深圳网站设计公司排行
  • 柳州制作网站有哪些营销推广方式
  • 免费建筑图纸下载网站宁德seo公司
  • 业务型网站做seo长沙官网seo推广
  • 网站功能说明怎么做b2b网站大全免费
  • 江津网站建设方案友情链接怎么做
  • html5 php网站源码下载推广营销企业
  • 上海营销型网站标准最新军事动态
  • wordpress添加web网站seo优化
  • wordpress安装不能选择语言站长seo
  • 加油站网站大全友情链接检测
  • 黄岛网站建设负面消息处理必应搜索推广
  • 深圳龙岗网站建设公司百度关键词点击器
  • 如何做文化传播公司网站无锡网站制作优化
  • 淄博网站推广app推广
  • 网站修改需要什么网络营销方法有哪些?
  • 网站建设的域名续费域名解析ip地址
  • 中国广告网站网络营销的模式有哪些
  • ueditor 文件大小超出网站限制上海网站建设哪家好
  • 淘宝客可以自己做网站推广吗关键字搜索
  • 开发网站做什么单词优化和整站优化
  • 沈阳网站建设多少钱qq群推广软件
  • 长春火车站防疫政策市场seo是什么意思
  • 必应网站收录提交入口站长工具seo查询5g5g
  • 建设网站开题报告蜘蛛seo超级外链工具