string - 从字符串中删除单个字符出现

标签 string algorithm duplicates

我想要一个算法以 O(n) 或更低的复杂度从字符串中删除所有出现的给定字符? (它应该是 INPLACE 只编辑原始字符串)

例如。

String="aadecabaaab";

removeCharacter='a'

Output:"decbb"

最佳答案

享受算法:

j = 0
for i in length(a):
  if a[i] != symbol:
    a[j] = a[i]
    j = j + 1

完成:

length(a) = j

关于string - 从字符串中删除单个字符出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18135691/

相关文章:

mysql - 将可能的重复标记为不同的

mysql - 大型 SQL 数据库删除重复行

c - 以下代码中运行时错误的原因是什么

string - 如何删除不可打印的字符

java - 如何在单独的行上输出字符串数组,每行允许有 N 个字符

algorithm - 找到可以从 N 中获取的最大值

c++ - 克鲁斯卡尔算法解释

algorithm - 需要帮助理解 Sardinas-Patterson 算法(提供算法和示例)

vba - 按行而不是列删除范围中的重复值

c++ - 在多线程程序中控制对字符串对象的访问的最佳方法