题目描述
给定一个字符串chas[],其中只含有字母字符和“”字符,现在想把所有“”全部挪到chas的左边,字母字符移到chas的右边。完成调整函数。
输入描述:

输入一行字符串代表chas(1≤lengthchas≤105)(1 \leq length_{chas} \leq 10^5 )(1≤lengthchas​≤105)。

输出描述:

输出一行,代表返回的字符串。

示例1

输入qw**23输出**qw23

解法一:字符串拼接

import java.io.*;
import java.util.*;
public class Main{public static void main(String[] args)throws Exception{BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String s = br.readLine();String res = getChange(s);System.out.println(res);}public static String getChange(String s){if(s==null||s.length()<2) return s;char[] arr = s.toCharArray();StringBuilder sb = new StringBuilder();for(int i=0;i<arr.length;i++){if(arr[i]=='*'){sb.insert(0,"*");}else{sb.append(arr[i]);}}return sb.toString();}
}

解法二:数组调整

import java.io.*;
import java.util.*;
public class Main{public static void main(String[] args)throws Exception{BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String s = br.readLine();String res = getChange(s);System.out.println(res);}public static String getChange(String s){if(s==null||s.length()<2) return s;char[] arr = s.toCharArray();int index = arr.length-1;for(int i=arr.length-1;i>=0;i--){if(arr[i]!='*'){arr[index--] = arr[i];}}for(int i=0;i<=index;i++){arr[i] = '*';}return String.valueOf(arr);}
}

程序员代码面试指南刷题--第五章.字符串的调整I相关推荐

  1. 程序员代码面试指南刷题--第五章.字符串的调整II

    题目描述 给定一个字符类型的数组chas[],chas右半区全是空字符,左半区不含有空字符.现在想将左半区的空格字符串替换成"%20",假设chas右半区足够大,可以满足替换需要的 ...

  2. 程序员代码面试指南刷题--第五章.翻转字符串(1)

    题目描述 给定字符类型的数组chas,请在单词间做逆序调整.只要做到单词的顺序逆序即可,对空格的位置没有要求. 输入描述: 输入一行只含字母和空格的字符串,代表chas. 输出描述: 输出一行字符串, ...

  3. 程序员代码面试指南刷题--第五章.数组中两个字符串的最小距离

    题目描述 给定一个字符串数组strs,再给定两个字符串str1和str2,返回在strs中str1和str2的最小距离,如果str1或str2为null,或不在strs中,返回-1. 输入描述: 输入 ...

  4. 《程序员代码面试指南第二版》Python实现(个人读书笔记)

    说明 最近在读左神的书---<程序员代码面试指南-IT名企算法与数据结构题目最优解(第二版)>以及看了一些左神的基础.进阶.高频等视频课程,为了记录自己的学习成果,并且方便以后查看,将自己 ...

  5. 程序员代码面试指南第二版 4.猫狗队列

    welcome to my blog 程序员代码面试指南第二版 4.猫狗队列 题目描述 题目描述 实现一种猫狗队列的结构,要求如下: 1. 用户可以调用 add 方法将 cat 或者 dog 放入队列 ...

  6. 算法大神左程云耗尽5年心血分享程序员代码面试指南第2版文档

    前言 学习是一种基础性的能力.然而,"吾生也有涯,而知也无涯.",如果学习不注意方法,则会"以有涯随无涯,殆矣". 学习就像吃饭睡觉一样,是人的一种本能,人人都 ...

  7. 《程序员代码面试指南》第五章 字符串问题 拼接所有字符串产生字典顺序最小的大写字符串...

    题目 拼接所有字符串产生字典顺序最小的大写字符串 java代码 努力中.... 转载于:https://www.cnblogs.com/lizhouwei/p/8955158.html

  8. 《程序员代码面试指南》第二章 链表问题 构造链表和节点的实体

    准备一些链表和节点的实体,方便后面使用 java代码 /*** @Description:构造一个链表实体,方便后续构造链表* @Author: lizhouwei* @CreateDate: 201 ...

  9. 《程序员代码面试指南》第二章 链表问题 在单链表和双链表中删除倒数第K个节点...

    题目 在单链表和双链表中删除倒数第K个节点 java代码 /*** @Description:在单链表和双链表中删除倒数第K个节点* @Author: lizhouwei* @CreateDate: ...

最新文章

  1. 矩阵乘法无需相乘,速度提升100倍,MIT开源最新近似算法 | ICML 2021
  2. bilibili怎么设置弹幕数量_python爬取B站视频弹幕分析并制作词云
  3. Redis:哨兵模式(Sentinel)原理
  4. 发布丨网易云信智慧云课堂解决方案,让教育不再难
  5. SecureCRT如何显示颜色和高亮显示
  6. microscope image 3D reconstruction
  7. BZOJ1018 | SHOI2008-堵塞的交通traffic——线段树维护区间连通性+细节
  8. 《程序设计与数据结构》第八周学习总结
  9. form怎么加ion_企业微信裂变该怎么做?一份裂变1000+社群裂变方案的底层逻辑
  10. 团队开发——个人工作总结01
  11. @sql 单元测试_SQL单元测试:使用异常
  12. 强化学习DQN算法实战之CartPole
  13. javaweb 初学建议
  14. Atitit it软件领域职称评级规定,精深方向。 目录 1. 软件工程师资格证 1 1.1. 法规规范 十大标准,三级五晋制。 1 1.2. 三级制 使用者 原理维修者 制造设计者 1 1.3.
  15. strcpy_s函数
  16. mysql脏页处理方法_mysql脏页是什么
  17. 相机光学(十一)——镜头
  18. JAVA判断数字是否在指定开闭区间内
  19. NVMe1.4 Admin Command 学习(3)-- fw commit sanitize
  20. 有趣的Python:Python控制键盘鼠标

热门文章

  1. Win10添加右键菜单以管理员方式打开cmd命令行
  2. 计算机系统结构 之 Amdahl定律
  3. 50个BA分析工具第四个-Business Case
  4. 非递归的归并排序(详细解析)
  5. 锐龙r9 5900hx和i7 11800h哪个好 i711800h和锐龙r95900hx对比
  6. 欧洲语言框架A1到C2,开言英语怎么样,学习过一段时间的效果评价
  7. C#链接SQL知识点
  8. 基于Servlet+JSP+JDBC的登录注册案例
  9. android 圆圈扩大动画,Android实现3个圆圈的动画
  10. 基于Basys2的分秒计时器的设计