【发布时间】:2015-02-02 08:33:05
【问题描述】:
这个问题只是要求在 R 中实现以下问题:Find the longest common starting substring in a set of strings (JavaScript)
"这个问题是最长公共子串问题的一个更具体的例子。我只需要在一个数组中找到最长的公共起始子串"。
所以我只是为这个问题寻找一个 R 实现(最好不要以 JavaScript 版本中建议的 for / while 循环 方式),如果可能的话,我想把它包装成一个函数,所以我可以应用于数据表中的许多组。
经过一些搜索,我找不到一个 R 示例,因此这个问题。
示例数据: 我有以下字符向量:
dput(data)
c("ADA4417-3ARMZ-R7", "ADA4430-1YKSZ-R2", "ADA4430-1YKSZ-R7",
"ADA4431-1YCPZ-R2", "ADA4432-1BCPZ-R7", "ADA4432-1BRJZ-R2")
我希望在 R 中运行一个算法,它会找到以下输出:ADA44。
从我在 JavaScript 接受的答案中看到的,这个想法是首先对向量进行排序,提取第一个和最后一个元素(例如:"ADA4417-3ARMZ-R7" 和 "ADA4432-1BRJZ-R2",将它们分成单个字符,然后循环通过它们直到其中一个字符不匹配(希望我是对的)
任何关于这方面的帮助都会很棒!
【问题讨论】: