java 字符串忽略大小写排序 (华为机试)
2018-03-18 17:56
579 查看
题目描述
编写一个程序,将输入字符串中的字符按如下规则排序。规则 1 :英文字母从 A 到 Z 排列,不区分大小写。 如,输入: Type 输出: epTy规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。 如,输入: BabA 输出: aABb规则 3 :非英文字母的其它字符保持原来的位置。 如,输入: By?e 输出: Be?y样例: 输入: A Famous Saying: Much Ado About Nothing(2012/8). 输出: A aaAAbc dFgghh: iimM nNn oooos Sttuuuy(2012/8).示例1输入
A Famous Saying: Much Ado About Nothing (2012/8).
输出
A aaAAbc dFgghh: iimM nNn oooos Sttuuuy (2012/8).
import java.util.Collections; import java.util.LinkedList; import java.util.Scanner; /** * @author hadoop * */ public class Main24 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); while(in.hasNext()){ String string=in.nextLine(); LinkedList<String> list=new LinkedList<>(); char[] cs=string.toCharArray(); for(int i=0;i<cs.length;i++){ if((cs[i]>='a'&&cs[i]<='z')||(cs[i]>='A'&&cs[i]<='Z')){ list.add(String.valueOf(cs[i])); } } //字符串忽略大小写排序 Collections.sort(list, String.CASE_INSENSITIVE_ORDER); for(int i=0,j=0;i<cs.length;i++){ if((cs[i]>='a'&&cs[i]<='z')||(cs[i]>='A'&&cs[i]<='Z')){ System.out.print(list.get(j)); j++; }else{ System.out.print(cs[i]); } } System.out.println(); } } }
相关文章推荐
- 字符串 排序 忽略大小写。。。
- 华为机试-字符串排序
- 华为机试:计算两个字符串的最大公共字串的长度,字符不区分大小写
- 华为机试——将一个字符串的元音字母复制到另一个字符串,并排序
- Java - 华为机试训练 - 字符串分隔
- 华为机试---字符串的规定重新排序
- 华为(10)字符串排序无视大小写
- 华为机试-字符串排序
- Java - 华为机试训练 - 字符串反转
- android开发之java代码中字符串对比忽略大小写。java程序员必回,可用来比对验证码等问题
- 华为机试——字符串排序
- 华为机试—整数数组排序(字符串输入输出)
- 牛客网三道编程题(四)华为机试在线训练(三)将数字逆序输出、将n个字符串按照字典顺序排序
- python实现忽略大小写对字符串列表排序的方法
- 华为OJ—字符串排序(排序,忽略指定字符排序)
- 华为机试(字符串间隔,进制转换,质数因子)Java
- Java - 华为机试训练 - 删除字符串中出现次数最少的字符
- 牛客网_华为机试_026_字符串排序(字符字典码排序)
- java 字符串忽略大小写比较
- Java - 华为机试训练 - 【中级】单词倒排(正则表达式切割字符串)