原题网址:https://www.lintcode.com/problem/sort-letters-by-case/description

描述

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

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

您在真实的面试中是否遇到过这个题?  是

样例

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

挑战

在原地扫描一遍完成

标签
排序
两根指针
字符串处理
LintCode 版权所有
思路:
参照插入排序法,设置两根指针i、j,一个指向左侧调整好的小写字母区末位的下一个位置,另一个指向待处理区域的第一个元素。
如果待处理元素为小写字母,将其放到 i 处,i 处元素放到 j 处,i 向右移动一位,j 向右移动一位。
如果待处理元素不为小写字母,继续处理下一位,即 i 不动,j 向右移动一位。
AC代码:
class Solution {
public:/** @param chars: The letter array you should sort by Case* @return: nothing*/void sortLetters(string &chars) {// write your code hereint n=chars.size();int i=0;//小写字母区末位的下一个位置;for (int j=0;j<n;j++){if (chars[j]>='a'&&chars[j]<='z'){swap(chars[i],chars[j]);i++;}}}
};

其他方法:

https://blog.csdn.net/lyy_hit/article/details/49403791

转载于:https://www.cnblogs.com/Tang-tangt/p/9102376.html

49 字符大小写排序相关推荐

  1. lintcode :sort letters by case字符大小写排序

    题目 字符大小写排序 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序. 您在真实的面试中是否遇到过这个题? Yes 样例 给出"abAcD",一个可能的答案为& ...

  2. 利用 Arrays.sort 字符串 进行排序 完全按字符 排序 忽略字符大小写

    有的时候需要对数组里的element进行排序.当然可以自己编写合适的排序方法,但既然java包里有自带的Arrays.sort排序方法,在数组元素比较少的时候为何不用? Sorting an Arra ...

  3. mysql默认字符集和排序_MySQL字符集和排序规则

    MySQL在创建数据库是,需要设置数据库的字符集和排序规则,如图所示: 我觉得这里有必要解释下字符集和排序规则这两个概念. 字符集 说到字符集,需要先提下字符.字符集和字符编码这几个词的含义. 字符( ...

  4. mysql选择排序规则_关于mysql创建数据库中字符集和排序规则的选择

    1:字符集: 一般 主要选择两种: 1:utf8   (看unicode编码区从1 - 126就属于传统utf8区,),一般都够用,除非需要存储特殊字符 2:utf8mb4(utf8mb4兼容utf8 ...

  5. [华为机试真题][2014]62.去除重复字符并排序

    题目 描述: 去除重复字符并排序 运行时间限制: 无限制 内容限制: 无限制 输入: 字符串 输出: 去除重复字符并排序的字符串 样例输入: aabcdefff 样例输出: abcdef 代码 /*- ...

  6. lintcode-49-字符大小写排序

    49-字符大小写排序 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序. 注意事项 小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置. 样例 给出"abAc ...

  7. 代码实现从键盘接收一个字符串, 程序对其中所有字符进行排序,例如键盘输入: helloitcast程序打印:acehillostt...

    package com.loaderman.test;import java.util.Comparator; import java.util.Scanner; import java.util.T ...

  8. mysql 中文字符排序规则_mysql中字符集和排序规则说明

    数据库需要适应各种语言和字符就需要支持不同的字符集(Character Set),每种字符集也有各自的排序规则(Collation). 一.字符集 字符集,即用于定义字符在数据库中的编码的集合. 常见 ...

  9. 设置MySQL排序方式_设置MySQL设置字符集和排序方式

    1. 编辑/etc/my.cnf文件, 在"[client]"下添加"default-character-set=utf8" 2. 编辑/etc/my.cnf文 ...

  10. mysql的四个默认数据库是什么版本,MySQL5.7数据库字符集和排序规则有四个级别的默认设置:服务器,数据库,表和列。...

    MySQL5.7数据库字符集和排序规则有四个级别的默认设置:服务器,数据库,表和列. 最初,服务器字符集和排序规则取决于启动mysqld时使用的选项.可以使用 --character-set-serv ...

最新文章

  1. Ubuntu16.04下安装Redis数据库
  2. Ubuntu “载入软件包列表失败”
  3. oracle clob 存储大于4000字符的字符串
  4. Linux shell删除变量
  5. 世界首份博客报纸问世
  6. Java基础—序列化关键字transient
  7. html开启页面离线缓存,HTML5 离线缓存
  8. SpringMVC第一个例子
  9. ArcGIS Maritime Server 开发教程(八)ArcGIS Bathymetry 扩展模块
  10. CME ERROR错误代码列表
  11. 毛球科技细说隔离见证
  12. 09组团队项目-Alpha冲刺-6/6
  13. 推导Beta分布公式
  14. Alphasense B4系列PPB 级空气质量传感器应用
  15. 运筹优化(二)--线性规划概念及应用模型
  16. ehcache 缓存丢失_求助,EhCache缓存中数据失效的问题!
  17. python 编写函数,实现根据键盘输入的长、宽、高之值计算长方体体积
  18. android第三方开源音频播放器,Android第三方开源SeekBarCompat:音乐类播放器等APP进度条常用...
  19. P1879 [USACO06NOV]Corn Fields G
  20. 【服务器数据恢复】断电导致存储raid6阵列瘫痪的数据恢复案例

热门文章

  1. 6. 吴恩达机器学习课程-作业6-SVM
  2. 三百行python代码的项目_300行Python代码打造实用接口测试框架
  3. php调用视频功能,PHP代码调用示例
  4. android list布局,android-为具有不同项目布局的ListViews创建ViewHolders
  5. linux查看php执行用户,在浏览器中打开php文件时,是Linux中的哪个用户执行的?...
  6. maven打包所有依赖
  7. 架构师成长之旅_第一篇:插件与框架是什么?
  8. 详解JS中的事件机制(带实例)
  9. NTP漏洞可致Windows系统触发DoS
  10. PHP 扩展 Mongo 与 MongoDB