lintcode 字符大小写排列

作者: yzawyx0220 | 来源:发表于2016-12-29 10:54 被阅读83次

    给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。
    样例
    给出"abAcD",一个可能的答案为"acbAD"。
    比较简单的题,设置两个指针,一个在字符串的开头,一个在末尾,使最开始的字符和'a‘比较,小于’a'即为大写字母,和后面的第j个位置交换,接着比较,以此类推,有点像快速排序。

    class Solution {
    public:
        /** 
         * @param chars: The letters array you should sort.
         */
        void sortLetters(string &letters) {
            // write your code here
            for (int i = 0,j = letters.size()-1;i < j;) {
                if (letters[i] < 'a') {
                    swap (letters[i],letters[j]);
                    j--;
                }
                else i++;
            }
        }
    };
    
    

    相关文章

      网友评论

        本文标题:lintcode 字符大小写排列

        本文链接:https://www.haomeiwen.com/subject/tdwuvttx.html