我是靠谱客的博主 老迟到鼠标,最近开发中收集的这篇文章主要介绍巧妙的字符串排序,保证你不看,绝对想不到,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目描述

编写一个程序,将输入字符串中的字符按如下规则排序。

规则1:英文字母从AZ排列,不区分大小写。

      如,输入:Type 输出:epTy

规则2:同一个英文字母的大小写同时存在时,按照输入顺序排列。

    如,输入:BabA 输出:aABb

规则3:非英文字母的其它字符保持原来的位置。

    如,输入:By?e 输出:Be?y

样例:

    输入:

   A Famous Saying: Much Ado About Nothing(2012/8).

    输出:

   A aaAAbc dFgghhiimM nNn oooos Sttuuuy (2012/8).


//思路:利用桶排序的思想

import java.util.*; public class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); while (s.hasNext()) { String str = s.nextLine(); ArrayList ls = new ArrayList();

此注释为经典的桶排序思想// for (int j = 0; j < 26; j++) // for (int i = 0; i < str.length(); i++) { // char ch = str.charAt(i); // if (ch - 'a' == j || ch - 'A' == j) // ls.add(ch); // } int k = 0; StringBuffer sb=new StringBuffer(); for(int i=0; i<str.length(); i++){ char chs=str.charAt(i); if ((chs >= 'a' && chs <= 'z') || (chs >= 'A' && chs <= 'Z')) sb.append(ls.get(k++)); else sb.append(chs); } System.out.println(sb.toString()); } } }



最后

以上就是老迟到鼠标为你收集整理的巧妙的字符串排序,保证你不看,绝对想不到的全部内容,希望文章能够帮你解决巧妙的字符串排序,保证你不看,绝对想不到所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部