gpt4 book ai didi

java - java程序的编程逻辑

转载 作者:行者123 更新时间:2023-11-30 08:21:48 25 4
gpt4 key购买 nike

我需要在 java 中创建一个程序,其中当给出的输入是:

hhllyyjhhh

输出应该是

h2l2y2j1h3 

相反,我得到了输出

h2l2y2j1  

我知道原因,但请告诉我应该如何纠正它或者可能会告诉我一个新的逻辑。

在下面的代码中,T是字符数组,ans是一个空字符串。

        int counter=0;
for(int i=0;i<T.length;i++)
{
for(int j=i;j<T.length;j++)
{
if(T[i]==T[j])
{
counter++;
}
else
{
ans=ans+T[i]+counter;
i=j-1;
counter=0;
break;
}

最佳答案

问题是如果你的计数一直匹配你不添加最后一个字符,我建议你稍微改变你的方法并尝试在你附加字符和计数之前向前扫描(基本上将你的 else 移到内部循环之外)-

char[] T = "hhllyyjhhh".toCharArray();
String ans = "";
for (int i = 0; i < T.length; i++) {
int count = 1;
while (i + count < T.length && T[i + count] == T[i]) {
count++;
}
ans += T[i] + String.valueOf(count);
i += count - 1;
}
System.out.println(ans);

在此处生成您请求的输出。

关于java - java程序的编程逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24904260/

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