• 和为S的两个数字


    和为S的两个数字

    输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。

    代码实现

    package 剑指offer;

    import java.util.ArrayList;

    /**
     * @author WangXiaoeZhe
     * @Date: Created in 2019/11/22 16:09
     * @description:
     */

    public class Main9 {
        public static void main(String[] args) {

        }

        public ArrayList<Integer> FindNumbersWithSum(int[] arrayint sum) {
            ArrayList<Integer>list=new ArrayList<>();
            if (array == null || array.length < 2) {
                return list;
            }
            int i = 0, j = array.length - 1;
            while (i < j) {
                if (array[i] + array[j] == sum) {
                    list.add(array[i]);
                    list.add(array[j]);
                } else if (array[i] + array[j] > sum) {
                    j--;
                }else {
                    i++;
                }
            }
            return list;
        }
    }
  • 相关阅读:
    算法
    Unity-UI
    lua-设计与实现 1类型
    Unity-Cache Server
    lua-高效编程-总结
    算法-JPS寻路设计思想
    数据结构- List、Dictionary
    数据结构-二叉树、堆
    VSCode更好用
    功能快捷键
  • 原文地址:https://www.cnblogs.com/wuhen8866/p/11912274.html
Copyright © 2020-2023  润新知