wennicky 2015-10-10 20:49 采纳率: 42.9%
浏览 1621

分治与递归的一个问题!

写分治递归算法,求解这个问题:有一个字符数组,比如aabbbbbc,定义run是连续相同字母组成的字符串,例如这个例子的run分别是aa bbbbb和c一共三个。要求用分治递归求解改字符数组每个run和该字符。还是这个例子,最后应该输出(a,2)(b,5)(c,1)
我的想法是二分法,每次一半一半分,直到分到只剩一个字符,返回(a[i],1),定义一个结构体里面有character和num两个变量,(a[i],1)就对应这两个变量。但是有一个问题当左右两个run的字符相同时需要合并,怎么知道什么时候需要合并呢。还有就是二分法的话返回的可以超过两个吗?比如bbbc,一直分的话返回应该有三个,第一个run是前两个b,第二个run是第三个b 第三个run是c 不知道该怎么做了。求大神帮助啊!!!

  • 写回答

1条回答 默认 最新

  • threenewbee 2015-10-10 21:48
    关注

    这个问题根本不适合什么分治递归。如果你像找个题目来练习分治递归,可以试试快速排序或者二分查找。

    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)