欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > OJ 外观数列

OJ 外观数列

2025/1/24 19:34:56 来源:https://blog.csdn.net/2301_76445610/article/details/142303156  浏览:    关键词:OJ 外观数列

题目:

「外观数列」是一个数位字符串序列,由递归公式定义:

  • countAndSay(1) = "1"
  • countAndSay(n) 是 countAndSay(n-1) 的行程长度编码。

行程长度编码(RLE)是一种字符串压缩方法,其工作原理是通过将连续相同字符(重复两次或更多次)替换为字符重复次数(运行长度)和字符的串联。例如,要压缩字符串 "3322251" ,我们将 "33" 用 "23" 替换,将 "222" 用 "32" 替换,将 "5" 用 "15" 替换并将 "1" 用 "11" 替换。因此压缩后字符串变为 "23321511"

给定一个整数 n ,返回 外观数列 的第 n 个元素。

示例 

题目大意 

来自林空语 - 力扣(LeetCode) 的理解

代码编程 

class Solution {
public://使用了递归调用的方法string countAndSay(int n) {if(n==1)return "1";return ans((countAndSay(n-1)));}string ans(string s) {string s1;int i = 0;while (i < s.length()) {int j = 1; while (i + j < s.length() && s[i] == s[i + j]) {j++; }s1 += to_string(j) + s[i]; i += j; }return s1;}};

代码思路来源:七 - 力扣(LeetCode) 

代码理解示意图

 

题目来源:38. 外观数列 - 力扣(LeetCode)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com