【41】递增数组判断是否存在两个树等于给定值
【41】递增数组判断是否存在两个树等于给定值
fengsehng 发表于1年前
【41】递增数组判断是否存在两个树等于给定值
  • 发表于 1年前
  • 阅读 1
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

题目:

给定单调递增的整数数组[n0, n1, n2,….,nk] array, 以及目标数T,边写一个算法existSum(array, T),来判定在数组array中,是否存在2个数p, q, 满足p + q = T. 该方法返回1如果存在,否则返回0

思路:

  • 采用双指针的思路,指向第一个和最后一个。start和end,计算两个数的和all。
  • all == T,返回true
  • all < T,start++,all > T,end–

代码:

boolean findNUmberWithSum(int data[] ,int length,int T){
        boolean found = false;
        if(data == null || length < 1)return found;
        int start = 0;
        int end = length -1;
        while(start < end){
            int all = data[start]+data[end];
            if(all == T){
                found = true;
                break;
            }
            if(all < T){
                start++;
            }
            if(all > T){
                end--;
            }
        }
        return found;   
        }

欢迎入群:

公众号IT面试题汇总讨论群

这里写图片描述

如果扫描不进去,加我微信(rdst6029930)拉你。

欢迎关注《IT面试题汇总》微信订阅号。每天推送经典面试题和面试心得技巧,都是干货!

微信订阅号二维码如下:

这里写图片描述

共有 人打赏支持
粉丝 4
博文 284
码字总数 214494
×
fengsehng
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: