解题思路:
先以空格分隔字符串,转为数组,接着去除多余空格,排序·然后去除重复单词
注意事项:
一直通过不了但没找出问题,求助!!!
参考代码:
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner =new Scanner(System.in);
String s= scanner.nextLine();
//以空格分割s
String [] primaryArr=s.split("\\s+");
//确定去除空格后的数组的长度
int l= primaryArr.length;
//去空格
for (int i=0;i<primaryArr.length;){
//如果数组有一项为空格
if (primaryArr[i].equals("")){
for (int k=i;k<primaryArr.length-1;k++){
//则往前挪移位
primaryArr[k]=primaryArr[k+1];
}
//长度减一
l--;
}
else i++;
}
//复制指定的数组,定义新的长度
String [] secondArr= Arrays.copyOf(primaryArr,l);
//排序
Arrays.sort(secondArr);
//去重
int l1= secondArr.length;
for (int i=0;i< l1-1;i++){
for (int j=i+1;j< l1;){
if (secondArr[i].equals(secondArr[j])){
for (int k=j;k< l1-1;k++){
secondArr[k]=secondArr[k+1];
}
l1--;
}else j++;
}
}
String [] finalArr=Arrays.copyOf(secondArr,l1);
for (String i :finalArr){
System.out.println(i);
}
}
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复