《程序员代码面试指南》第五章 字符串问题 去掉字符串中连续出现k 个0 的子串
2024-09-28 06:16:13
题目
去掉字符串中连续出现k 个0 的子串
java代码
package com.lizhouwei.chapter5;
/**
* @Description: 去掉字符串中连续出现k 个0 的子串
* @Author: lizhouwei
* @CreateDate: 2018/4/23 21:34
* @Modify by:
* @ModifyDate:
*/
public class Chapter5_3 {
public String removeKZero(String str, int k) {
if (str == null) {
return null;
}
char[] chars = str.toCharArray();
int count = 0;
int start = -1;
for (int i = 0; i < chars.length; i++) {
if (chars[i] == '0') {
count++;
start = start == -1 ? i : start;
} else {
if (count == k) {
while (count-- != 0) {
chars[start++] = ' ';
}
}
count = 0;
start = -1;
}
}
if (count == k) {
while (count-- != 0) {
chars[start++] = ' ';
}
}
return String.valueOf(chars);
}
//测试
public static void main(String[] args) {
Chapter5_3 chapter = new Chapter5_3();
String str = "A0000B000";
System.out.println("A0000B000 去除连续3个0:" + chapter.removeKZero(str, 3));
}
}
结果
最新文章
- mysql设置远程访问权限
- PowerDesigner 逆向中 Name和Comment互换
- Java的主要数据类型(Primitive)
- [玩转微信平台]XML的格式化- 如何去掉XML 文档头和命名空间
- js弹出窗口的学习和使用
- 【剑指offer】递归循环两种方式反转链表
- delphi 中使用WaitForMultipleObjects等待线程执行,再执行后续代码
- IOS 横屏中添加UIImagePickerController获取系统图片
- Zepto源码笔记(二)
- js获取时间和日期,字符串和时间戳之间的转换
- json对象的封装与解析
- 一、AspNet Core通过控制台编译程序的基本指令:
- 基于Vue+node.js的个人博客
- Intent传值的学习
- Hadoop Compatibility in Flink
- 字典树HihoCoder - 1014
- ubuntu安装python3.6
- Oarcle 入门之like关键字
- L2-008. 最长对称子串(思维题)*
- 深入详解美团点评CAT跨语言服务监控(八)报表持久化