zoukankan      html  css  js  c++  java
  • lintcode :sort letters by case字符大小写排序

    题目

    字符大小写排序 

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

    样例

    给出"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
  • 相关阅读:
    线段树小结
    线段树 区间合并
    线段树
    线段树离散化+区间修改
    线段树模板

    geatpy
    基于Anaconda 安装 geatpy 和 tensorflow
    Python 求“元组、列表、字典、数组和矩阵”的大小
    np.array()和np.mat()区别
  • 原文地址:https://www.cnblogs.com/bbbblog/p/5103569.html
Copyright © 2011-2022 走看看