我想知道是否有人知道 C++ string::erase 函数的实现及其复杂性。我知道 C++ 字符串是一个字符对象。我假设它不会分配和创建一个新的字符对象,然后从旧字符串 O(n) 和 O(n) 空间复制字符。它是否在字符 O(n) 和 O(1) 空间上移动?我查看了 cplusplus.com 和 Bjarne Stroustrup 的书,但没有找到答案。有人可以指出我实现它的源代码或知道答案吗?
谢谢!
c++ time-complexity space-complexity
c++ ×1
space-complexity ×1
time-complexity ×1