书籍字符串的统计字符串(5)0823

题目
 给定一个字符串str,返回str的统计字符串,例如“aaabbadddffc”的统计字符串为“a_3_b_2_a_1_d_3_f_2_c_1"。

补充题目
给定一个字符串的统计字符串cstr,再给定一个整数index,返回cstr所代表的原始字符串上的第index个字符,例如”a_1_b_100"所代表的原始字符串上第0个字符串是’a‘,第50个字符是'b'。

public String getCountString(String str){if(str == null || str.equals("")){return "";}char[] chs  = str.toCharArray();String res = String.valueOf(chs[0]);int num = 1;for(int i = 1;i<chs.length;i++){if(chs[i] != chs[i-1]){res = concat(res,String.valueOf(num),String.valueOf(chs[i]));}else{num++;}}return concat(res,String.valueOf(num),"");
}public String concat(String s1,String s2,String s3){return s + "_" + s2 + (s3.equals("")) ? s3 : "_" +s3);
}public char getCharAt(String cstr,int index){if(cstr == null || cstr.equals("")){return 0;}char[] chs = cstr.toCharArray();boolean stage = true;char cur = 0;int num = 0;int sum = 0;for(int i = 0;i != chs.length;i++){if(chs[i] == '_'){stage = !stage;}else if(stage){sum += num;if(sum > index){return cur;}num = 0; cur = chs[i];}else{num = num * 10 + chs[i] - '0';}}return sum + num > index ? cur : 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/52294.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QT-五子棋游戏

QT-五子棋游戏 一、演示效果二、核心代码三、下载链接 一、演示效果 二、核心代码 #include "GameModel.h" #include <time.h> #include <stdlib.h>GameModel::GameModel(){}void GameModel::startGame(GameType type){gameType type;//初始化棋盤game…

uniapp/vue如何实现一个子表单及子表单作用

子表单是一个辅助表单或一个表&#xff0c;它允许在主表单中添加多个行式项目&#xff0c;以处理与主记录相关联的多个辅助项目或数据。子表单在多种应用场景中发挥着重要作用&#xff0c;特别是在需要处理一对多关系的数据时。 以下是对子表单的详细解析&#xff1a; 定义与特…

nvm安装node找不到版本问题(只有iojs)

&#x1f506; 背景 很久没有使用nvm新安装node版本了&#xff0c;今天在切换时执行 nvm install 要执行很久&#xff0c;然后返回暂无当前版本的错误信息&#xff0c;那就执行 nvm ls-remote 看一下远程的版本&#xff0c;发现返回的只有iojs的版本&#xff0c;没有node版本&…

90%的设计师都不知道的免抠图素材插件,水花免抠png素材轻松搞定!附保姆教程

你是否曾在设计中为绘制那些晶莹剔透的水花而苦恼&#xff1f;用PS太麻烦&#xff0c;细节根本抠不清楚&#xff1b;去素材网找&#xff0c;不是付费太高就是图案不满意&#xff01;可以试试千鹿设计助手的“AI免抠生成”插件&#xff0c;接下来我来分享一下我的一些使用过程和…

LeetCode 3133.数组最后一个元素的最小值:位运算+双指针

【LetMeFly】3133.数组最后一个元素的最小值&#xff1a;位运算双指针 力扣题目链接&#xff1a;https://leetcode.cn/problems/minimum-array-end/ 给你两个整数 n 和 x 。你需要构造一个长度为 n 的 正整数 数组 nums &#xff0c;对于所有 0 < i < n - 1 &#xff0…

ardupilot开发 --- C嘎嘎 篇

长生不老&#xff1f;三界六道不就毁在这4个字上&#xff1f; 溜撒点一起上吧 cout和cin的使用&#xff0c;标准输入输出<< 和 >> 的使用数据类型&#xff08;函数&#xff09;模板的使用&#xff1a;命名空间的使用&#xff0c;std命名空间语句块new 的使用引用 &…

fiddler在软件测试中的使用(详细版)

1.抓包&#xff0c;辅助定位bug&#xff08;web中类似谷歌浏览器F12开发调试工具&#xff09; 合格的软件测试工程师&#xff0c;不仅仅需要能够发现bug&#xff0c;还需要能透过bug表象&#xff0c;分析出问题根本原因&#xff0c;从而提升bug的解决效率&#xff0c;通过fidd…

微信小程序记录(持续更新)

1.登录相关 登录简单来说就是用uni.login获取登陆凭证code。然后调用后台登录接口传递给后台&#xff0c;后台解码再返回token等一系列信息给前端 参考地址&#xff1a; 微信小程序获取用户手机号码教程&#xff08;前端后端&#xff09;_微信小程序获取手机号-CSDN博客 代码…

【pytorch】固定(freeze)住部分网络

https://blog.csdn.net/jningwei/article/details/120300014 如果使用过了FSDP架构&#xff0c;需要使用pytorch2.0以上的版本。 use_orig_paramstrue ignored_parameters[param for param in model.parameters() if not param.requires_grad] # 如果是2.1.0以上版本&#xf…

Qt音视频处理类有这些

Qt 提供了一系列音视频处理的类&#xff0c;这些类可以帮助开发者实现音视频的播放、录制、编解码等功能。以下是 Qt 中一些主要的音视频类&#xff1a; QMediaPlayer: 用于播放音频和视频的类&#xff0c;支持多种媒体格式&#xff0c;可以控制播放、暂停、停止等基本操作 。…

手机使用技巧:如何恢复Android手机不见的短信

在您的 Android 手机上丢失短信可能是一种令人沮丧的经历&#xff0c;尤其是在文本包含重要信息的情况下。幸运的是&#xff0c;有一些方法可以在Android上恢复已删除的短信。在这篇博文中&#xff0c;我们将讨论几种在Android手机上恢复已删除短信的方法。 为什么需要恢复Andr…

vue2版本空目录下创建新项目的方法2024

vue2版本空目录下创建新项目的方法2024 node -v npm -v vue -V 安装vue-cli 2.9版本的命令 npm install vue-cli -g 卸载vue2.x方法&#xff1a; npm uninstall vue-cli -g 设置 NPM 镜像 npm config set registry https://registry.npmmirror.com vue -V 报错时需设置环…

JVM的内存模型和垃圾回收

JVM内存区域 内存模型图&#xff1a; 堆 线程共享。所有的对象实例以及数组都要在堆上分配。回收器主要管理的对象。 它的目的是存放对象实例。同时它也是GC所管理的主要区域&#xff0c;因此常被称为GC堆&#xff0c;又由于现在收集器常使用分代算法&#xff0c;Java堆中还…

【Spring Cloud】Consul

官网介绍: Spring Cloud Consul该项目为Spring Boot应用程序提供了与Consul的集成,通过自动配置和绑定到Spring环境以及其他Spring编程模型习语。通过几个简单的注解,您可以在应用程序内部快速启用和配置常见模式,并使用基于Consul的组件构建大型分布式系统。提供的模式包括…

【网络编程】第十一章 数据链路层 - 以太网(MAC+MTU+ARP+MSS+RARP)

文章目录 重点链路层以太网MAC帧格式碰撞域MAC地址MAC地址和IP地址 MTU-最大传输单元MTU 对 IP 的影响MTU 对 UDP 的影响MTU 对 TCP 的影响-MSS ARP协议ARP协议的工作流程ARP请求的过程ARP应答的过程 ARP 缓存中间人攻击 RARP协议 重点 数据链路层的作用&#xff1a;两个设备 …

如何解决大数据背景下的数据治理挑战

在大数据背景下&#xff0c;数据治理面临着诸多挑战&#xff0c;这些挑战涵盖了数据的复杂性、安全性、合规性、技术选择、文化和组织变革等多个方面。为了有效解决这些挑战&#xff0c;可以从以下几个方面入手&#xff1a; 一、明确数据治理目标和策略 与业务战略紧密结合&a…

虚幻5|AI视力系统,听力系统,预测系统(2)听力系统

虚幻5|AI视力系统&#xff0c;听力系统&#xff0c;预测系统&#xff08;1&#xff09;视力系统-CSDN博客 一&#xff0c;把之前的听力系统&#xff0c;折叠成函数&#xff0c;复制粘贴一份改名为听力系统 1.小个体修改如下&#xff0c;把之前的视力系统改成听力系统 2.整体修…

解决Jasper Studio预览无数据源的问题:在Dataset and Query里面预览数据为空,但是浏览器访问接口,是存在数据的。

目录 1.1、错误描述 1.2、解决方案 1.1、错误描述 最近接触Jasper Studio报表开发比较多一些&#xff0c;遇到了很多的问题&#xff0c;其中有一个问题就是&#xff1a;在Jasper Studio中的Dataset and query里面预览数据&#xff0c;发现是空的&#xff0c;如下图所示&…

数据仓库ETL开发

在企业数字化转型的过程中&#xff0c;数据仓库已经成为了企业管理和决策的重要工具。数据仓库ETL开发是构建数据仓库的关键步骤之一&#xff0c;它可以帮助企业从源系统中抽取、清洗、转换和整合数据&#xff0c;方便企业进行管理和分析。本文将介绍如何高效实现数据仓库ETL开…

媒体服务zlmediakit系统架构图

1. 整体系统架构图 (Overall System Architecture Diagram) 描述: 整体系统架构图展示了ZLMediaKit的主要组件及其交互方式&#xff0c;包含流媒体接入、处理、存储和分发等主要流程。 样例图: ------------------------------------------ | 客户端 (Clients…