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

预约网站模板网站建设平台哪家好

预约网站模板,网站建设平台哪家好,网站开发职位描述,免费两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序…
  1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。

之前做过这道题,看到这道题我的脑海里出现三个粗略的想法。1暴力枚举法、2二分算法、3hashmap
我首先排除了暴力枚举,实现思路是:target-nums[i],一个一个找数组中是否有相等的,若有,将i、j返回出去
二分算法,实现思路是,用Arrays.sort将数组进行排序,将target-nums[i]设为目标值,然后两个指针,第一个指针指向i+1位置,最后一个指针指向末尾,二分查找
hashmap,我先将数组中的下标和对应的值存进hashmap里,循环遍历次数为nums.length,在循环里先得到key->i,value->get(i);然后remove(i),调用containsValue(target-get(i)),false返回new int[0],并且将remove的元素添加回去;这里有个小问题,如果是true,那么怎么得到true的这个value的key呢?假设我们得到了,返回new int[]{i,key}
很显然,我们得不到这个key,那么反过来想呢?将hashmap的key和value反过来存储,这里又有一个问题,hashmap的key唯一,但显然nums数组里面可能会存在两个相同的元素,所以hashmap显然不行。
我们知道map的key必须唯一不可重复,所以说这个思路走不通。
既然把元素存进去然后查找是否存在某个value行不通(我们不知道对应的key),换个思路,我们可以寻找某个key是否存在,key存nums[i],value存i,那么如果存在,可以返回 new int[]{i,value}
实现代码:

class Solution {public int[] twoSum(int[] nums, int target) {HashMap<Integer,Integer> map = new HashMap<>();for(int i=0;i<nums.length;i++){if(map.containsKey(target-nums[i])){return new int[]{i,map.get(target-nums[i])};}else{map.put(nums[i],i);}}return new int[0];}
}

在这里插入图片描述
在这里插入图片描述

我们看这个map的结构图,可以知道key-value形式的除了hashmap还有linkedhashmap、treemap、concurrenthashmap以及hashtable
hashmap:key、value都可为null,但key不可重复,value可重复,线程不安全,无序
linkedhashmap:key、value都可为null,key不可重复,value可重复,线程不安全,有序(按照输入顺序输出)
treemap:key不可为null,value可以为null,若key可以排序,那么按照自然顺序排序,升序
concurrenthashmap:key、value都不能为null,线程安全,
hashtable:key、value都不能为null,线程安全

以下是我二月份的时候对这道题的思考,看来还是有点成长的。
添加链接描述

http://www.hengruixuexiao.com/news/33830.html

相关文章:

  • 自己做充值网站怎么做一个网页
  • 宿州推广公司谷歌搜索优化
  • 黄浦企业网站制作百度权重高的网站有哪些
  • 网站打不开用什么浏览器时事新闻最新消息
  • 北海做网站的网络公司宁波seo推荐推广平台
  • 专门做淘宝客网站双滦区seo整站排名
  • 曹县做网站建设免费手游推广代理平台渠道
  • 可以做一键拨号和导航的网站怎么营销自己的产品
  • 重庆公司网站建设价格seox
  • 佛山做营销型网站建设今天国际新闻最新消息10条
  • 坪山网站建设哪家好站长工具关键词
  • 岳阳设计网站推荐百度收录查询工具官网
  • 搭建电商网站源码哪里能买精准客户电话
  • 网站建设方案论文济南做seo外包
  • 广州网站建设新科分公司杭州网站seo推广软件
  • 网上商城建网站信息流优化师怎么入行
  • 招标网站靠谱吗百度推广个人怎么开户
  • 网站吸引人的功能品牌营销做得好的品牌有哪些
  • 懂得网站推广seo技术平台
  • 怎么学做网站网站整站优化推广方案
  • 品牌推广的意义seo营销推广平台
  • 电子商城网站建设方案疫情防控数据
  • 网站被惩罚百度手机seo
  • 网站改版需要怎么做免费域名申请个人网站
  • 包装设计网站素材网站推广软件有哪些
  • 杭州 手机网站网络热词大全
  • 江苏景禾瑜博建设工程有限公司网站免费广告推广软件
  • 做网站做国外广告网络推广方案怎么写
  • 网站建设有哪些困难百度广告联盟点击一次多少钱
  • 做设计参考的网站seo课程培训入门