栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

7-2 java高级 22

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

7-2 java高级 22

7-2 java高级 22_05找出有相同数字的最长子序列 (20 分)
编写一个时间复杂度为O(n)的程序,提示用户输入一个以0结束的整数序列,找出有相同数字的最长子序列

输入格式:
用户输入一个以0结束的整数序列。

输出格式:
找出有相同数字的最长子序列。

输入样例:
在这里给出一组输入。例如:

2 4 4 8 8 8 8 2 4 4 0
结尾无空行
输出样例:
在这里给出相应的输出。例如:

index 3 with 4 values of 8
结尾无空行

import java.util.Scanner;
//文档:2 4 4 8 8 8 8 2 4 4 0.note
//		链接:http://note.youdao.com/noteshare?id=991b679b42f6a67e0bd0dfe96ad4199e&sub=C96104BA6AA14766B82A2598BAE1D05F
 class SameNumLongest {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		String string=scanner.nextLine();
		int nowNum = 0;
		int nowNumLen = 0;
		int maxLenNum = 0;
		int maxLen = 0;
		int idx=0;
		int nowNumIdx=0;
		int i=0;
		while (scanner.hasNextInt()) {
			int num = scanner.nextInt();
			if (num == 0)
				break;
			if (num == nowNum) {
				nowNumLen++;
			} else {
				nowNum=num;
				nowNumLen = 1;
				nowNumIdx=i;
			}
			if (nowNumLen > maxLen) {
				maxLenNum = nowNum;
				maxLen = nowNumLen;
				idx=nowNumIdx;
			}
			i++;
		}
//		System.out.println("maxLenNum");
//		System.out.println(maxLenNum);
//		System.out.println("maxLen");
//		System.out.println(maxLen);

//		index 3 with 4 values8 8 2 4 4 0
		maxLenNum
		8
		maxLen
		4
		index 3 with 8 values of 4 of 8
//		System.out.println(String.format("index %d with %d values of %d",idx,maxLenNum,maxLen ));
		System.out.println(String.format("index %d with %d values of %d",idx,maxLen,maxLenNum ));
//		2 4 4 8 8
	}
}

class Main{
	public static void main(String[] args) {
		SameNumLongest.main(args);
	}
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/331638.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号