CollaborativeString.setText不会导致"最小数量的"编辑

时间:2015-03-25 18:20:05

标签: google-drive-realtime-api

  

CollaborativeString.setText:设置此协作字符串的内容。请注意,此方法在当前字符串内容和新内容之间执行文本差异,以便使用最少数量的文本插入和删除来修改字符串,以便将当前内容更改为新指定的内容。

这是一个小问题,但文档在技术上是不准确的。将一个字符串更改为另一个字符串的最小编辑次数始终最多为2:删除整个字符串并插入新字符串。

例如,要更改,将baaaaaaa更改为caaaaaaa,实时api会做出明智的事情,即为每个b使用删除事件,并为每个c使用相应的插入事件。

出于好奇,可以将公开的精确文本差异算法公之于众吗?我尝试了几种没有重现精确算法的差异算法。

1 个答案:

答案 0 :(得分:1)

我想文档并不完全清楚,但是它的最小插入和删除次数达到了结束状态没有重述那些保持不变的东西。

我怀疑我们是否想要说明有关算法的任何更具体的内容,因为它的主题如有更改,恕不另行通知:)你为什么关心?