您的位置:首页 > 编程语言

对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符

2016-09-23 10:43 841 查看

题目描述

对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。测试样例:
"qywyer23tdd",11
返回:y
package com.cn.yqjr;import java.util.ArrayList;import java.util.List;public class FirstRepeat {public static void main(String[] args) {System.out.println(findFirstRepeat("pmedmitjtckhxwhvpwemznhmhzhpueainchqrftkmbjlradhmjekcqzansyzkvqhwnrdgzdbzewdmxkzrscikdaugbvygntrifnolehdtrqjlasofuvzeijbmzehkxknmjekcxswqldknysfsxrqaqzp",152));}//返回:y    public static char findFirstRepeat(String A, int n) {    	String[] str=A.split("");    	for(int x=0;x<n;x++){    		int index=0;    		int num=0;    		//对于每一个值,都需要从前开始遍历    		while(index<=x){    			if(str[index].equals(str[x])){    				num++;    			}    			index++;    		}    		//该值出现了两次,说明重复了    		if(num>1){    			char flag='x';    			flag=str[x].toCharArray()[0];    			return flag;    		}          	}    	//返回该值说明已经没有重复的    	return 'p';    }}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 编程 设计
相关文章推荐