传递一个数组和一个特定的目标整型数字,返回的两个数组元素相加之后和目标整型数字相等的数组的下标组合集

import java.util.ArrayList;
import java.util.List;

public class LeetCodeTest2 {
    public static void main(String[] args) {
        int[] intArr=new int[]{2,7,11,15};
        List<CustomerIntIndex> customerIntIndexList=getArrIndex(intArr,9);
        System.out.println(customerIntIndexList);
    }

    public static List<CustomerIntIndex> getArrIndex(int[] intArr, int targetNum){
        int length = intArr.length;
        int resultVal=1;
        for (int i = 0; i < 4; i++) {
            resultVal*=10;
        }
        if(length<2 || length>resultVal){
            return null;
        }
        int resultVal1=1;
        for (int i = 0; i < 9; i++) {
            resultVal1*=10;
        }
        resultVal1=resultVal1*(-1);
        int resultVal2=1;
        for (int i = 0; i < 9; i++) {
            resultVal2*=10;
        }
        if(targetNum<resultVal1 || targetNum>resultVal2){
            return null;
        }
        for (int i = 0; i < intArr.length; i++) {
            int intElement=intArr[i];
            if(intElement<resultVal1 || intElement>resultVal2){
                return null;
            }
        }
        ArrayList<CustomerIntIndex> arrayList = new ArrayList<CustomerIntIndex>();
        for (int i = 0; i < intArr.length-1; i++) {
            int intArrayEle = intArr[i];
            CustomerIntEle customerIntEle = new CustomerIntEle();
            customerIntEle.setIdIndex(i);
            customerIntEle.setIntArrEle(intArrayEle);
            for (int j = i+1; j < intArr.length; j++) {
                int intArrayEle2 = intArr[j];
                CustomerIntEle customerIntEle2 = new CustomerIntEle();
                customerIntEle2.setIdIndex(j);
                customerIntEle2.setIntArrEle(intArrayEle2);
                int tempSum=intArrayEle+intArrayEle2;
                if(tempSum==targetNum){
                    CustomerIntIndex customerIntIndex = new CustomerIntIndex();
                    customerIntIndex.setIdIndex1(i);
                    customerIntIndex.setIdIndex2(j);
                    arrayList.add(customerIntIndex);
                }
            }
        }
        return arrayList;
    }
}
class CustomerIntIndex{
    private Integer idIndex1;
    private Integer idIndex2;

    public Integer getIdIndex1() {
        return idIndex1;
    }
    public void setIdIndex1(Integer idIndex1) {
        this.idIndex1 = idIndex1;
    }
    public Integer getIdIndex2() {
        return idIndex2;
    }
    public void setIdIndex2(Integer idIndex2) {
        this.idIndex2 = idIndex2;
    }
    @Override
    public String toString() {
        return "["+idIndex1+","+idIndex2+"]";
    }
}
class CustomerIntEle{
    private Integer idIndex;
    private Integer intArrEle;
    public int getIdIndex() {
        return idIndex;
    }
    public void setIdIndex(int idIndex) {
        this.idIndex = idIndex;
    }
    public int getIntArrEle() {
        return intArrEle;
    }
    public void setIntArrEle(int intArrEle) {
        this.intArrEle = intArrEle;
    }
}

#读研or工作,哪个性价比更高?##讲讲我的真实离职原因##传音控股求职进展汇总##歌尔求职进展汇总#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务