爱奇艺Android 求输入字符串中的出现次数最多的单词

爱奇艺Android 求输入字符串中的出现次数最多的单词并输出次数,为什么这么简单的程序是0%。程序在下面,麻烦大家指点下:
package com.test;
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);  
		HashMap<String,Integer> map ;
		while (in.hasNextLine()) {
			map = new HashMap<String,Integer>();
			String input =in.nextLine().trim();
			input = input.replace('\'', ' ');
			input = input.replace(',', ' ');
			input = input.replace('.', ' ');
			String array[] =input.split(" ");
			int max = 1;
			String maxStr = array[0];
			for(int i=0;i<array.length;i++)
			{
				if(map.containsKey(array[i].trim()))
				{
					map.put(array[i].trim(), map.get(array[i].trim())+1);
					if(map.get(array[i].trim()) > max)
					{
						max = map.get(array[i].trim());
						maxStr = array[i].trim();
					}
				}
				else
				{
					map.put(array[i], 1);
				}
			}
			if(input.equals(""))
			{
				System.out.println("");
				System.out.println(0);
			}
			else
			{
				System.out.println(maxStr);
				System.out.println(max);
			}
		}
	}
}

全部评论
应该没有什么问题吧,package,类名,while不知道会不会多余,还有那些replace,会不会是你写的太好了😂😂
点赞 回复 分享
发布于 2016-09-18 17:27
我是改写了MAP的顺序,输出最大的,过了
点赞 回复 分享
发布于 2016-09-18 17:29
package Test; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Scanner; public class Main{       @SuppressWarnings("resource") public static void main(String[] args){ //            Scanner in=new Scanner(System.in); //            System.out.println("请输入字符串:");             String str="a friend in need is a friend indeed"; //            String str= in.next();//输入的字符串str //            str=str.replace('\'', ' '); //            str=str.replace(',', ' '); //            str=str.replace('.',' ');             String[] strings=str.split(" ");             Map<String,Integer> map=new HashMap<String,Integer>();             List<String> list=new ArrayList<String>();             for(String s:strings){                   if(map.containsKey(s)){                         int x=map.get(s);                         x++;                         map.put(s,x);                         list.add(s);                   }else{                       map.put(s,1);                       list.add(s);                                  }             }             int max=0;             String maxString=null;             for(String s:list){                   int x=map.get(s);                   if(x>max){                         maxString=s;                         max=x;                   }             }             System.out.println("出现次数最多的单词为:"+maxString);             System.out.println("出现的次数为:"+map.get(maxString));       } }
点赞 回复 分享
发布于 2016-09-18 17:58
我在本地可以ac 但是在 那就报错 也不知道什么情况
点赞 回复 分享
发布于 2016-09-18 17:59
而且我还专门自定义一个str测试 也是可以
点赞 回复 分享
发布于 2016-09-18 18:00
str.split("\\s+"); 可能有多个空格
点赞 回复 分享
发布于 2016-09-18 21:02

相关推荐

点赞 评论 收藏
分享
评论
点赞
4
分享
牛客网
牛客企业服务