码迷,mamicode.com
首页 > 编程语言 > 详细

lintcode 中等题:sort letters by case字符大小写排序

时间:2016-01-05 20:48:03      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:

题目

字符大小写排序 

给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。

样例

给出"abAcD",一个可能的答案为"acbAD"

注意

小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置。

挑战

在原地扫描一遍完成

解题

这个题目很简单,前面刚做一个把大于某个数之和的排在后面,快速排序的思想

技术分享
public class Solution {
    /** 
     *@param chars: The letter array you should sort by Case
     *@return: void
     */
    public void sortLetters(char[] chars) {
        //write your code here
        int len = chars.length;
        if(len ==0 || chars==null){
            
        }else{
            int i=0;
            int j=len-1;
            while(i<=j){
                while(i<=j && isLowerCase(chars[i])) i++;
                while(i<=j && isUpperCase(chars[j])) j--;
                if(i<=j){
                    char ch = chars[i];
                    chars[i] = chars[j];
                    chars[j] = ch;
                }
            }
        }
        
    }
    public boolean isLowerCase(char ch){
        if(ch>=‘a‘ && ch<=‘z‘)
            return true;
        return false;
    }
    public boolean isUpperCase(char ch){
        if(ch>=‘A‘ && ch<=‘Z‘)
            return true;
        return false;
    }
    
}
Java Code

 

lintcode 中等题:sort letters by case字符大小写排序

标签:

原文地址:http://www.cnblogs.com/theskulls/p/5103569.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!