gpt4 book ai didi

java - java中不使用hashmap的重复字符计数

转载 作者:行者123 更新时间:2023-12-02 02:17:55 25 4
gpt4 key购买 nike

请帮我在java中使用字符串(或StringBuffer)编写代码。请不要使用除 String 或 StringBuffer 之外的任何其他数据结构。我得到了答案,但代码从开始到有 0 个字符再次计算字符数。o/p 在最后给出,请检查。提前致谢。

    import java.util.*;

public class DuplicateWordsOcc {
static Scanner sc = new Scanner(System.in);
int i,j,k;
void show(String s,char ch,int n){
for(i=0;i<s.indexOf(ch);i++){
if(s.charAt(i)!=ch){
System.out.println(ch+" : "+n);
}
}
}

public static void main(String args[]){
DuplicateWordsOcc ob1 =new DuplicateWordsOcc();
System.out.println("Enter the string: ");
String s1 = sc.nextLine();
String s2 = new String(s1);
int i,j,k;
for(i=0;i<s1.length();i++){
int count=1;
for(j=i+1;j<s1.length();j++){
if(s1.charAt(i)==s1.charAt(j)){
count++;
ob1.show(s1,s1.charAt(i),count);
}
}
}
}
}

输出

输入字符串:

你好

l:2

这是另一个输出

输出

输入字符串:

你好你好你好

l:2

l:3

l:4

l:5

l:6

l:7

l:8

l:2

l:3

l:4

l:5

l:6

l:7

o:2

o:2

o:2

o:3

o:3

o:3

o:4

o:4

o:4

:2

:2

:2

:2

:3

:3

:3

:3

l:2

l:3

l:4

l:5

l:6

l:2

l:3

l:4

l:5

o:2

o:2

o:2

o:3

o:3

o:3

:2

:2

:2

:2

l:2

l:3

l:4

l:2

l:3

o:2

o:2

o:2

l:2

在第二个输出中,请注意粗体字母,这是第一次迭代中显示的真正答案。我想在得到它后停止执行。

从第一个输出中,我得出的结论是,超过计数 2 就会出现问题。

我知道问题出在 show() 方法内的 for 循环,请更正我的代码

请原谅我的英语。

最佳答案

修改后的代码如下:

import java.util.*;

public class DuplicateWordsOcc {
static Scanner sc = new Scanner(System.in);

public static void main(String[] args){
System.out.println("Enter the string: ");
String s1 = sc.nextLine();
s1 = s1.replaceAll("\\s","").toUpperCase();
int len = s1.length();
while(len > 0) {
int count = 1;
for(int j=1;j<len;j++){
if(s1.charAt(0)==s1.charAt(j)){
count++;
}
}
if (count > 1) {
System.out.println(s1.charAt(0)+" : "+count);
}

String character = String.valueOf(s1.charAt(0)).trim();
s1 = s1.replaceAll(character,"");
len -= count;

}
}
}

“他是一名非常优秀的运动员并且他会游泳”的输出。是

H : 3
E : 5
I : 2
S : 2
A : 4
O : 2
D : 2
T : 2
N : 2

关于java - java中不使用hashmap的重复字符计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49016137/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com