-
java实现输入一个正整数n,输出全部连续正整数相加后等于n的所有序列。
2016-10-14 22:32:51请用java实现输入一个正整数n,输出以下格式,全部连续正整数相加后等于n的所有序列。 例如: 15=1+2+3+4+5; 15=4+5+6; 15=7+8; 我从网上文章中得到的思路,进行了自己的想法的修改,代码如下:public ...题目如下:
请用java实现输入一个正整数n,输出以下格式,全部连续正整数相加后等于n的所有序列。
例如:
15=1+2+3+4+5;
15=4+5+6;
15=7+8;
我从网上文章中得到的思路,进行了自己的想法的修改,代码如下:public class Sum { //将实现方式放入Sum方法中,在主函数中调用 public Sum(int num){ int sum = 1;//初始化sum,当序列中数增加到num时,输出满足条件的序列 int beg = 1;//从1开始 int cur = 1;//当前数字 while(beg <=num/2+1){ if(sum == num){ System.out.print(num + "="); for(int k = beg;k<=cur;k++){ if(k==cur){ System.out.print(k+";"); } else{ System.out.print(k + "+"); } } System.out.println(); sum = sum - beg; beg++; cur++; sum +=cur; } if(sum>num){ sum = sum - beg; beg++; } else{ cur++; sum +=cur; } } } public static void main(String[] args) { new Sum(15); } }
运行结果如下:
15=1+2+3+4+5;
15=4+5+6;
15=7+8; -
Java算法给定一个整数数组,找出其中两个数相加等于目标值
2020-07-06 12:24:30给出一个整数数组,请在数组中找出两个加起来等于目标值的数, 你给出的函数twoSum 需要返回这两个数字的下标(index1,index2),需要满足index1 小于index2.。注意:下标是从1开始的 假设给出的数组中只存在唯一...题目描述
给出一个整数数组,请在数组中找出两个加起来等于目标值的数,
你给出的函数twoSum 需要返回这两个数字的下标(index1,index2),需要满足 index1 小于index2.。注意:下标是从1开始的
假设给出的数组中只存在唯一解
例如:
给出的数组为 {2, 7, 11, 15},目标值为9
输出 ndex1=1, index2=2/** * @author yuchen * @version 1.0 * @date 2020-07-06 11:32 */ public class S1 { public static void main(String[] args) { int[] c = {0,4,3,0}; int[] result = twoSum(c,0); System.out.println(Arrays.toString(result)); } public static int[] twoSum (int[] arr, int target) { //定义结果数组,如果查询不到 则返回{-1.-1} int[] result = {-1,-1}; //<数组的值,数组下标+1> HashMap<Integer,Integer> map = new HashMap<>(); for(int i=0;i<arr.length;i++){ map.put(arr[i],i+1); } for(int j=0;j<arr.length;j++){ //得到第二个数的值 int target2 = target - arr[j]; if(map.containsKey(target2) && (j+1)!=map.get(target2)){ result[0] = j+1; result[1] = map.get(target2); return result; } } //没查到则返回{-1,-1} return result; } }
-
给定一个整数数组,找出其中两个数相加等于目标值
2020-04-08 16:21:16Example: Given nums = [2, 7, 11, 15], target = 9...题目的意思:在无序的数组中找两个数,使得这两个数之和与给定的目标值相等,返回这两个数的下标。 大佬们的做法:https://blog.csdn.net/wz2292667460/article...Example:
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
题目的意思:在无序的数组中找两个数,使得这两个数之和与给定的目标值相等,返回这两个数的下标。大佬们的做法:https://blog.csdn.net/wz2292667460/article/details/79358044
https://blog.csdn.net/yang20141109/article/details/51523405?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1
https://www.xuebuyuan.com/3255498.html下面代码不是好的实现方法,可以用hash表来做。遍历数组i从第一个数开始,j从(i+1)开始,直到找到合适的值。这个算法的时间复杂度为O(n2),空间复杂度为O(1)。
int twonumber_add(int a[],int n,int target) { int res[2]; for (int i=0; i<n; i++) { for (int j=i+1; j<n; j++) { if (a[i]+a[j]==target) { res[0]=i; res[1]=j; } } } return *res; }
-
【leetcode 刷题二】求数组中两数相加等于目标值的下标
2019-12-03 16:50:49给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 ...题:
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。
示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/two-sum
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。解:
class Solution { public int[] twoSum(int[] nums, int target) { Map<Integer,Integer> map = new HashMap(); for(int i = 0; i < nums.length; i++){ map.put(target - nums[i], i); } for(int i = 0; i < nums.length; i++){ if(map.get(nums[i]) != null){ return new int[]{i,map.get(nums[i])}; } } return null; } }
输入:
[2,11,15,20]
22
输出
[0,3] -
程序员升级打怪第1关:怎么快速找到数组中两个数相加等于目标值?
2021-01-31 15:41:131 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。 示例: 给定 nums=[2,7,11,15],target=9, 因为nums[0]+nums[1]=2+7=9, 所以返回[0,1]。 ... -
数组满足几个数相加等于一个数_挑战!一个数组和一个数值,在数组中找出两个数的和等于这个数值...
2021-01-29 03:26:42下面是来自leetcode的一个简单的题目(小编能力有限只能挑战下简单的):给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应... -
和为S的两个数字 VS 和为S的连续整数序列
2018-01-17 14:36:30题目一:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,输出任意一对即可。 我们以数组{1、2、4、7、11、15}以及和为15举例。首先定义两个指针,一个指向... -
微软面试题——整数升序数组、数M,输出和为M的两个数组元素
2013-06-08 10:58:09问题:输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。 要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字M,输出任意一对即可。例如输入数组1、2、4、7... -
[编程之法]2.2 寻找和为定值的两个数
2018-06-03 19:34:00输入一个整数和一个整数数组,在数组中查找一对数,满足他们的和正好是输入的那个整数,如果有多对数的和等于输入的整数,输出任意一对即可。例如,如果输入数组[1,2,4,5,7,11,15]和整数15,那么由于4+11=15,因此... -
从头做leetcode之leetcode 15 三数之和
2020-05-06 17:06:0915.三数之和 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0...从头到尾遍历数组,将遍历到的元素设为ass,这样这个问题就变成了在之后的元素中找到两个相加等于0-a... -
leetcode--two_sum问题
2016-09-12 23:01:53leetcode–two_sum问题2016-09-12问题描述: 给定一个排好序的整数数组,使得两数相加等于一个特定的值。 要求: 返回两个数在数组中的索引,第一个数的索引必须小于第二个;数组的起始下标不是从0开始的。 Input:... -
Leetcode——1.java语言计算两数之和
2020-03-13 15:33:19给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的两个整数,并返回他们的数组下标 给定nums=[2,7,11,15],target = 9 因为nums[0] + nums[1] = 9; 所以返回[0,1] 方式一:直接解决 使用2层... -
Leetcode之2Sum问题
2017-07-06 21:00:46给定一个整数数组,找出在数组中两个数字相加的和等于给定数字的下标,例如,对于输入数组为[2,7,11,15],指定的数字为9,因为2+7=9,所以最后返回的是2和7对应的下标[0,1] 该问题可以通过map数据类型来实现,... -
Two Sum
2015-12-25 10:40:05给定一个整数数组,和一个目标和,找到数组中的两个数,使其相加等于目标和 注意:返回值是两个数在数组中的下标(基于1),且index1小于index2。 例如: 输入: numbers={2, 7, 11, 15}, target=9 输出: index1=1, ... -
2020-11-26
2020-11-26 21:34:24LeetCode算法题:两数之和 需求描述: ...首先我们可以定义一个哈希表map,然后循环遍历给定数组nums,每循环一次都要判断在map中是否存在一个key与当前数组元素num[i]相加等于target值,如果key值存在,那 -
LeetCode每日刷题目第一题
2020-07-13 18:02:36简介:定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 事例:给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以... -
Java——LeetCode01:两数之和
2020-05-25 14:27:51给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums ... -
LeetCode:两数之和
2020-07-13 11:04:23给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例 给定 nums = ... -
leetcode两数之和(JavaScript实现)
2020-08-01 17:26:27给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums... -
初入leetcode-两数和
2018-05-22 20:52:49来看一下题目,给定一个整数数组,另外给定一个数,如果在数组中两个数相加等于这个数,获得这两个数的索引,两个数不能重复,而且假设每个数最多只有一组数存在于数组中。Example:Given nums = [2, 7, 11, 15], ... -
LeetCode: 两数之和
2020-11-11 15:18:06题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例:... -
1 两数之和
2020-07-06 08:31:25给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums =... -
LeetCode——1.两数之和
2020-11-24 09:00:02给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums =... -
面试题32:从1到n整数中1出现的次数:利用数字规律实现更为简单。 面试题33:把数组排成最小数:首先将数组中的数字全部转换为字符串存储在一个新的数组中,然后比较每两个数字串的拼接的mn和nm的大小,若mn<nm,...
-
C语言程序设计标准教程
2009-05-22 18:29:14这个返回的函数值是具有一定的数据类型的,应在函数定义及函数说明中给以说明,例如在例题中给出的max函数定义中,函数头为: int max(int a,int b);其中“int ”类型说明符即表示该函数的返回值为整型量。又如在... -
各种c++经典例题,多种编程语言
2008-11-05 10:27:27一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的, 问海滩上原来最少有多少个桃子? 【程序33】 题目:求0—7所能组成的奇数个数。 【程序34】 题目:一个偶数总能表示为两... -
C语言编程要点
2017-09-18 00:10:3716.2. 函数参数类型必须在函数参数表中或紧跟其后的部分中说明吗? 217 16.3. 程序中必须包含main()的原型吗? 218 16.4. main()应该总是返回一个值吗? 219 第17章 用户界面——屏幕和键盘 219 17.1. 为什么直到程序... -
数据结构(C++)有关练习题
2008-01-02 11:27:18<br>实验四 综合(课程设计) 内容及步骤: 1、假定一维数组a[n]中的每个元素值均在[0,200]区间内,用C++编写一个算法,分别统计出落在[0,20],[21,50],[51,80],[81,130],[131,200]等各区间内的元素...
-
MySQL DML 语言(插入、更新与删除数据)
-
王力安防首次公开发行股票招股说明书.pdf
-
基于神经进化的深度学习模型研究综述
-
零基础一小时极简以太坊智能合约开发环境搭建并开发部署
-
2014年重庆理工大学《信息安全》期末考试试卷.pdf
-
2014年重庆理工大学《计算机网络安全》期末考试试卷.pdf
-
MySQL Router 实现高可用、负载均衡、读写分离
-
elemen
-
《文件和目录操作命令》
<2.> -
MySQL 多实例安装 及配置主从复制实验环境
-
牛牛量化策略交易
-
IFIX简单历史报警显示功能.docx
-
Python函数库深度详解(1)
-
MHA 高可用 MySQL 架构与 Altas 读写分离
-
LVS + Keepalived 实现 MySQL 负载均衡与高可用
-
2014年重庆理工大学《数据库技术2》期末考试试卷.pdf
-
graphics的lib-ok.7z
-
LW前端代码规范
-
access应用的3个开发实例
-
5-Verilog HDL时序逻辑与组合逻辑设计.7z