Algorithmacly加速字符串切片操作-Python

问题描述

假设我有一个很大的文本文档。 我需要模仿文本编辑器的复制和粘贴操作。

更具体地说, 我想编写两个函数copy(i,j)和paste(i),其中i和j代表文本文档中字符的索引。

现在,我知道正常的字符串切片每次都会创建一个新的字符串对象,并且执行类似的操作

copy_text = str[i:j]
self.str = str[:i] + copy_text + str[j:]
考虑到我们在文本编辑器中执行复制粘贴功能次数

最终将导致大量新字符串对象的开销。

我该怎么做?甚至有可能吗?

我研究了 memoryview ,在其中他们使用了缓冲区,如果给他们创建原始对象的零拷贝视图,那么执行缓冲区可能会花费更少的时间。但是,我想通过算法来做到这一点,而不是在研究如何存储字符串。 我在考虑要存储字符串的数组行,并使用B +树存储指向该字符串的指针。我还没有真正实现任何东西。

期待您的评论。谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)