leetCode1两数之和

1 两数之和

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。

你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。

示例:

给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

暴力破解法

    /**
     * 时间复杂度n的平方
     * 空间复杂度n
     */
     
     public int [] findIndex(int a[],int sum){
         for(int i=0;i<a.length;i++){
             for(int j=i+1;j<a.length;j++){
                 if((a[j]+a[i])==sum){
                     return  new int[] {i,j};
                 }
             }
         }
       return null;
     }

空间换时间方法

    /**
     * 时间复杂度n
     * 空间复杂度n
     */
    public int [] findIndex2(int a[],int sum){
        HashMap hashMap=new HashMap();
        for(int i=0;i<a.length;i++){
            if(hashMap.containsKey(sum-a[i])){
                return  new int[] {i,(int)hashMap.get(sum-a[i])};
            }
            hashMap.put(a[i],i);
        }
        return null;
    }

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 为何我们要让孩子爱上吃水果呢,因为我们知道,水果中含有大量的维生素和矿物质,是孩子成长所必须的,我们只有让孩子补充...
    创客瑞雪阅读 250评论 0 0
  • 蟠桃之战,玉帝为了自己的目标迈出了成功的第一步,蟠桃的地位得到了凸现,和老君达成了仙丹换蟠桃的协议,还成功了...
    polymath阅读 1,170评论 0 0
  • 夜色阑珊,风影婆娑,窗外的月色正浓,窗下的砖缝里,秋虫低语呢喃,桂花香逝,菊花竞放,今夜无眠,轻依窗前望月,思绪远...
    古城苍狼阅读 544评论 4 16