-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathnew
93 lines (84 loc) · 2.76 KB
/
new
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
import java.io.*;
import java.util.*;
public class Main
{
public static void main (String[]args)
{
Scanner sc = new Scanner (System.in);
System.out.print ("Enter a string : ");
String str = sc.nextLine ();
char s[] = str.toLowerCase ().toCharArray ();
int spaces = 0, words = 0;
for (int i = 0; i < s.length; i++)
if (Character.isWhitespace (s[i]))
spaces++;
StringBuilder sb[] = new StringBuilder[spaces + 1];
for (int i = 0; i < sb.length; i++)
sb[i] = new StringBuilder ("");
for (int i = 0; i < s.length; i++)
{
if (Character.isWhitespace (s[i]))
words++;
else
sb[words].append (s[i]);
}
words++;
//for (int i = 0; i < sb.length; i++)
//System.out.println (sb[i]);
int count[] = new int[words];
for (int i = 0; i < count.length; i++)
count[i] = 1;
for (int i = 0; i < sb.length; i++)
for (int j = 0; j < sb.length; j++)
if (sb[i].toString().equals((sb[j].toString())) && i!=j)
count[i]+=1;
int maxValue=count[0];
for(int i:count)
if(i>maxValue)
maxValue=i;
//System.out.print(maxValue);
if(maxValue>1){
StringBuilder repeatedWords[]=new StringBuilder[sb.length];
for (int i = 0; i < sb.length; i++)
repeatedWords[i] = new StringBuilder ("");
// for (int i = 0, k=0; i < sb.length; i++)
// {
// if (count[i]==maxValue)
// {
// repeatedWords[k].append(sb[i]);
// k++;
// }
// }
for (int i = 0, k=0; i < sb.length; i++)
if (count[i]==maxValue)
{
repeatedWords[k].append(sb[i]);
k++;
}
StringBuilder repeat[]=new StringBuilder[repeatedWords.length+10];
for (int i = 0; i < repeat.length; i++)
repeat[i] = new StringBuilder ("");
for(int i=0,k=0;i<repeatedWords.length;i++)
for(int j=0;j<repeatedWords.length;j++)
{
if(i!=j){
if(!((repeatedWords[i].toString()).equals((repeatedWords[j]).toString())))
{
repeat[k].append(repeatedWords[i]);
k++;
}
}
for(int l=0;l<repeat.length;l++)
System.out.println(repeat[i]);
//System.out.print(repeatedWords);
// for(int i=0;i<sb.length;i++)
// for (int j = 0; j < sb.length; j++)
// if(count[i]==maxValue)
// if (sb[i].toString().equals((sb[j].toString())) && i!=j)
// count[i]+=1;
// System.out.println("Most repeated word is : "+ sb[maxValue]);
}}
else
System.out.println("No repeatative word!");
}
}