51信用卡编程题,按大小写字母和数字排序
来源:互联网 发布:adobe reader mac下载 编辑:程序博客网 时间:2024/06/06 02:43
1、问题描述:
输入一个字符串,字符串包含大小写字母和其他字符,现在要求对此字符串进行排序,并输出结果。
排序要求:
字母按a-z,A-Z排序,不分大小写,如果字母相同小写在大写之前。
例如:”abcADZ“排序结果为“aAbcDZ”
2、思路描述:
采用桶排序方法,桶排序是指以数组下标代表具体字母,数组内容存放对应字母个数。
用两个数组分别存储大小写字母个数,最后组合输出。
3、代码实现:
package cn.xaut.xinyongka;import java.util.*;public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);while(in.hasNext()){String str = in.nextLine();int[] alph = new int[26];int[] smallAlph = new int[26];StringBuffer noAlph = new StringBuffer();char[] strs = str.toCharArray();for(int i=0; i < strs.length; i++){if(strs[i] >= 65 && strs[i] <= 90){alph[strs[i]-'A']++;} else {if (strs[i] >= 97 && strs[i] <= 122) {smallAlph[strs[i]-'a']++;} else {noAlph.append(strs[i]);}}}StringBuffer result = new StringBuffer();for(int j=0; j < 26; j++){while(smallAlph[j] > 0){result.append((char)(j + 'a'));smallAlph[j]--;}while(alph[j] > 0){result.append((char)(j + 'A'));alph[j]--;}}result.append(noAlph);System.out.println(result);}}}
阅读全文
0 0
- 51信用卡编程题,按大小写字母和数字排序
- 按字母和数字排序
- 大小写字母和数字的ASCII码
- java 大小写字母和数字的随机数
- 夹杂数字字母大小写的字符串排序方法
- 大小写字母的排序
- SQL 排序 . 有字母和数字的先按字母后按数字
- 生成指定个数的随机码,同时包含大小写字母和数字【H3C笔试题】
- 生成随机的验证码?大小写字母和数字
- java---大小写字母和数字的随机组合的随机数
- 随即生成字符串(包括大小写字母和数字)
- js正则匹配数字、大小写字母、下划线、中线和点
- js验证密码必须为大小写字母和数字组成
- 大小写字母和数字的ascii码值是多少
- Shell实现数字互换和字母大小写互换
- Java生成随机密码(包含大小写字母和数字)
- C++ 随机 大小写字母数字
- CListCtrl 实现排序功能(数字和字母)
- 图文混排简单使用
- 2017 ACM/ICPC Asia Regional Qingdao Online 1007 hdu 6212 Zuma (区间dp)
- 给PDF文件插入页面需要如何去做
- JavaScript Cookie使用案例
- 数据结构-线性表之单链表
- 51信用卡编程题,按大小写字母和数字排序
- oracle-PLSQL的一些基本语句使用
- Java追加文件内容并导出
- react组件
- C#进阶 16 数组的声明
- U盘安装centos7
- Java中SimpleDateFormat用法详解
- 20170919前端第一天
- C#使用MonoPInvokeCallback,让C直接回调C#函数