Java实现两数之和等于二十
找出数组中两个数字之和为20的两个数
代码实现
public static void main(String[] args) {
	// TODO Auto-generated method stub
	int array[] = {1,7,17,2,6,3,14};
	findSum(array,20);
}
//	类似于二分查找法进行运算,时间复杂度为O(n)
private static void findSum(int[] array, int sum) {
	// TODO Auto-generated method stub
	Arrays.sort(array);
	int begin = 0;
	int end = array.length-1;
	while(begin<end) {
		if(array[begin]+array[end]<sum) {
			begin++;
		}else if(array[begin]+array[end]>sum) {
			end--;
		}else {
			System.out.println(array[begin]+" " + array[end]);
			begin++;
			end--;
		}
	}
}
结果展示
 
Java实现两数之和等于二十的更多相关文章
- 给定数组A,大小为n,现给定数X,判断A中是否存在两数之和等于X
		
题目:给定数组A,大小为n,现给定数X,判断A中是否存在两数之和等于X 思路一: 1,先采用归并排序对这个数组排序, 2,然后寻找相邻<k,i>的两数之和sum,找到恰好sum>x的 ...
 - LeetCode 167. Two Sum II - Input array is sorted (两数之和之二 - 输入的是有序数组)
		
Given an array of integers that is already sorted in ascending order, find two numbers such that the ...
 - [Java]1.两数之和 - LeetCode
		
1 题目 2 思路与代码 思路一:暴力法(两层For循环) 时间复杂度:O(n^2) 对于每个元素,我们试图通过遍历数组的其余部分来寻找它所对应的目标元素,这将耗费 O(n) 的时间.因此时间复杂度为 ...
 - Leetcode1--->数组中两数之和等于给定数
		
题目: 给定一个数组nums,目标数target.在数组中找到两数之和为target的数,返回两数的下标举例: Given nums = [2, 7, 11, 15], target = 9, Bec ...
 - [LeetCode] Two Sum II - Input array is sorted 两数之和之二 - 输入数组有序
		
Given an array of integers that is already sorted in ascending order, find two numbers such that the ...
 - 求数组中两数之和等于target的两个数的下标
		
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样的元 ...
 - leetcode刷题--两数之和(简单)
		
一.序言 第一次刷leetcode的题,之前从来没有刷题然后去面试的概念,直到临近秋招,或许是秋招结束的时候才有这个意识,原来面试是需要刷题的,面试问的问题都是千篇一律的,只要刷够了题就差不多了,当然 ...
 - LeetCode 167. 两数之和 II - 输入有序数组
		
题目: 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数. 函数应该返回这两个下标值index1 和 index2,其中 index1 必须小于 index2. 说明: 返回的 ...
 - 167. Two Sum II - Input array is sorted两数之和
		
1. 原始题目 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数. 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2. 说明 ...
 
随机推荐
- mfc HackerTools监控键盘按键
			
string GetKey(int Key) { string KeyString = ""; //判断符号输入 const int KeyPressMask = 0x800000 ...
 - spring生命周期的应用
			
1.ApplicationContextAware 实现手工加载bean: 例:https://www.cnblogs.com/wala-wo/p/5119192.html https://www.c ...
 - linux centos 网卡有关调试
			
本文章出至于设置固定IP不起作用,名称也无法修改 1.设置网卡配置文件 打开文件 vi /etc/sysconfig/network-scripts/ifcfg-enp8s0 把NAME.DEVICE ...
 - 三大操作系统对比使用之·Ubuntu16.04
			
时间:2018-11-13 整理:byzqy 本篇是一篇个人对 Ubuntu 16.04(桌面版)使用方法.技巧以及应用推荐的文章,以便查询和分享! 打开终端: Ctrl+Alt+T,即可打开&quo ...
 - Vulnhub靶机渗透 -- DC5
			
信息收集 通过nmap搜索到IP为:192.168.200.11 开启了80http.111RPC服务端口 先打开网页,然后进行目录爆破 contact.php 攻击 经搜索没有发现可以攻击wheel ...
 - 关于innodb中MVCC的一些理解
			
一.MVCC简介 MVCC (Multiversion Concurrency Control),即多版本并发控制技术,它使得大部分支持行锁的事务引擎,不再单纯的使用行锁来进行数据库的并发控制,取而代 ...
 - 解决方案-问题001:物理机、虚机等等Linux操作系统/usr/bin目录权限误操作,导致无法切换root
			
导语:平常运维人员会误操作一些目录权限,导致一些问题,那么如何恢复呢? 问题:物理机.虚机等等Linux操作系统/usr/bin目录权限误操作,导致无法切换root? 实验环境: ip地址 是否目录正 ...
 - MySQL——MySQL体系结构
			
1.连接层 2.SQL层: (1)将接收到的SQL语句,解析成执行计划 (2)查询优化器 ---->选择最优的执行计划,交给存储引擎 (3)查询缓存: 缓存执行计划 (4)附加功能:权限. 语法 ...
 - Activiti 学习(二)—— Activiti 流程定义和部署
			
概述 在这一节,我们将创建一个 Activit 工作流,并启动这个流程,主要包含以下几个步骤: 定义流程,按照 BPMN 的规范,使用流程定义工具,用流程符号把整个流程描述出来 部署流程,把画好的流程 ...
 - C#提取程序的图标
			
需要添加对System.Management.dll的引用 ,并且不要忘记导入下面的名称空间. using System.Management; 将ListView和 ImageList控件从可视 ...