`
fneg
  • 浏览: 5285 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

编程题目解析

    博客分类:
  • Java
阅读更多

题目:输入一个已经按升序排序过的数组和一个数字,
在数组中查找两个数,使得它们的和正好是输入的那个数字。
要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出所有符合条件的组合即可。
例如输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此输出4和11。

 

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

public class GetNumInList {
	
	class Pair{
		private int a;
		private int b;
		public Pair(int a,int b){
			this.a=a;
			this.b=b;
		}
		@Override
		public String toString() {
			return "[" + a + ", " + b + "]";
		}
		
	}
	
	/**
	 * 从数组中找到一对数字的和与指定值相同
	 * @param orignal 待查找的数组
	 * @param found   待查找的数字
	 * @return
	 */
	public static List<Pair> findNum(List<Integer> orignal, int found) {
		List<Pair> result = new ArrayList<Pair>();
		int current = 0, last = 0;
		int length = orignal.size();

		for (int i = 0; i < length; i++) {
			current = i;
			last = i + 1;

			while (last <= length - 1) {
				if (found == (orignal.get(current) + orignal.get(last))) {
					result.add(new GetNumInList().new Pair(orignal.get(current),orignal.get(last)));
				}
				last++;
			}

		}
		return result;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		List<Integer> list = new ArrayList<Integer>();
		for (int i = 1; i < 10; i++) {
			list.add(i);
		}
		
		List<Pair> result=GetNumInList.findNum(list, 10);
		
		for(Pair pair:result){
			System.out.println(pair);
		}
	}

}
 
分享到:
评论

相关推荐

    编程猫图形化编程测评试题模拟测试题附答案

    ### 编程猫图形化编程测评试题知识点解析 #### 知识点一:角色跟随鼠标的速度调节 **题目描述:** 角色使用特定积木后能够缓慢地跟随鼠标移动。问题是如何在不更换积木的情况下,让角色更快地跟随鼠标移动。 **...

    2022年9月CIE-Python一级编程试题解析与应用

    其他说明:文档内的试题难度适中,涵盖了广泛的知识领域,不仅测试了理论知识的理解程度,还注重考察学生的实际编程操作技能。建议在备考阶段多次练习文档提供的习题,尤其是针对易错点和难点加强训练。

    编程思维提高习题 编程试题

    以下是对这些编程题目中涉及的知识点的详细解析: 1. 分数序列求和:这个问题涉及到序列处理和数学计算。你可以使用循环结构来生成序列,并在每次迭代中累加当前项。对于斐波那契数列(如本题所示),可以通过动态...

    java课后编程题目.doc

    Java 编程题目解析 在 Java 课程中,编程题目扮演着非常重要的角色,它可以帮助学生巩固所学的知识,提高编程能力和问题解决能力。以下是对给定文件的标题、描述、标签和部分内容的解析,从中可以提取出多个知识点...

    java编程题目 有答案

    标签“java java编程试题 java教程”表明这些编程题目可能被设计为教程的一部分,目的是为了帮助读者更好地学习Java语言。通过教程中的示例题目,读者可以更直观地学习Java的语法结构、类库使用、异常处理等知识点。...

    高级超经典c语言编程题目.doc

    "高级超经典c语言编程题目" 本文档收集了一些高级超经典的 C 语言编程题目,涵盖了数组、循环、判断等多个方面的知识点。这些题目都是来自于实际编程中的一些经典问题,能够帮助开发者更好地掌握 C 语言编程的技巧...

    蓝桥杯编程猫Kitten模拟试题二模拟题附答案

    ### 蓝桥杯编程猫Kitten模拟试题二知识点解析 #### 一、蓝桥杯简介与背景 蓝桥杯是一项面向全国高等院校在校大学生的IT技术竞赛,旨在培养学生的创新能力及实践能力。其中,“编程猫Kitten”是针对低龄段儿童设计...

    电赛历年真题查找与经典题目解析+编程知识+技术开发

    电赛历年真题查找与经典题目解析+编程知识+技术开发; 电赛历年真题查找与经典题目解析+编程知识+技术开发; 电赛历年真题查找与经典题目解析+编程知识+技术开发; 电赛历年真题查找与经典题目解析+编程知识+技术...

    蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发

    蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发; 蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发; 蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发; 蓝桥杯历年真题查找与经典题目解析+编程知识...

    ACM历年真题查找与经典题目解析+编程知识+技术开发

    ACM历年真题查找与经典题目解析+编程知识+技术开发; ACM历年真题查找与经典题目解析+编程知识+技术开发; ACM历年真题查找与经典题目解析+编程知识+技术开发; ACM历年真题查找与经典题目解析+编程知识+技术开发; ...

    美赛历年真题查找与经典题目解析+编程知识+技术开发

    美赛历年真题查找与经典题目解析+编程知识+技术开发; 美赛历年真题查找与经典题目解析+编程知识+技术开发; 美赛历年真题查找与经典题目解析+编程知识+技术开发; 美赛历年真题查找与经典题目解析+编程知识+技术...

    java基础编程试题

    ### Java基础编程试题知识点解析 #### 一、字符串与数组操作 **题目1:** - **题目描述**:用户输入一系列由逗号分隔的数字,程序需要支持按升序或降序对这些数字进行排序,并展示排序结果。 **解析**: 1. **字符...

    自己真理解析的2022年NOC大赛编程马拉松赛道Python决赛初中组A卷真题-含答案解析.pdf

    这份文档详细解析了比赛中的所有题目,并提供了参考答案和解析,目的是让更多的学生能在比赛中展示自己的实力,同时也为编程教师提供了教学参考。 文档中提到的五个主要知识点,分别是Python数据结构基础、函数使用...

    第三期NOC编程猫创新编程赛题回顾模拟题附答案

    ### 第三期NOC编程猫创新编程赛题回顾模拟题知识点解析 #### 题目一:变量得分的初始值与最终值 - **题目描述**:变量得分的初始值为0,根据给定的程序运行结束后,变量得分的数值变为多少?答案为9。 - **知识点...

    浪潮集团编程大赛初赛试题

    2. 编程题目要求: 每个题目都有具体的输入输出文件名,测试点数目,每个测试点分值,时间限制,内存限制以及结果比较方式。例如,对于“语言转换”题目,测试点数目为10,每个测试点分值为10分,时间限制为1秒,...

    GESP 2024年12月认证图形化编程3级试题解析与应用

    题目涉及基本的计算机科学知识,如计算思维、算法逻辑、Scratch基础知识及其编程技巧。试题难度适中,考察了考生对编程逻辑的理解能力以及实际操作技能。 适合人群:适合准备参加 GESP 认证考试的学生群体。 使用...

    第三期NOC编程猫创新编程赛题训练模拟题

    在这个训练模拟题中,我们可以看到各种类型的编程题目,包括变量、循环、条件语句、函数调用等等。这些建议题目可以帮助学生巩固编程基础知识,并且逐步提高编程能力。 在这个训练模拟题中,我们可以看到许多实用的...

    第四届蓝桥杯编程竞赛题目解析

    内容概要:本文档收录了第四届蓝桥杯竞赛的所有编程试题及其答案解析,涵盖了一系列算法和编程挑战,如计算日期、数值谜题、数学问题以及编码逻辑挑战等。通过解答具体实例,详细阐述了各个问题的背景、快速解题技巧...

    2009国际编程大赛题目

    标题 "2009国际编程大赛题目" 涉及的是一个编程竞赛的历年试题集,这通常包含一系列挑战性的编程问题,旨在测试参赛者的算法设计、数据结构掌握以及问题解决能力。这样的比赛有助于提升程序员的逻辑思维和编程技巧,...

    NOC大赛·核桃编程马拉松模拟题附答案

    **解析说明**:此题的具体解析信息缺失,但从题目的描述来看,雪球需要通过分析提示图中的程序逻辑来确定正确的行动路线。这类问题通常涉及循环、条件判断等编程基础概念的应用,需要考生根据给定的提示图进行逻辑...

Global site tag (gtag.js) - Google Analytics