什么是就地算法?

时间:2013-11-16 05:22:49

标签: string algorithm duplicates traversal in-place

假设我想从字符串中删除重复项。我决定使用长度为256的布尔数组来存储特定字符是否已经发生。我可以遍历字符串,并可以借助此辅助布尔数组删除所有重复项。

我的问题是“这个算法是否就位?”

我认为它使用的是恒定的空间量,它不会随着输入的大小而改变。如果我错了,请纠正。

1 个答案:

答案 0 :(得分:5)

就地算法意味着您正在将输入数据转换为输出数据。运行算法后,无法检索输入数据。

Out place算法意味着您保持输入数据不变,并为输出数据使用单独的空间。

  
    

我的问题是“这个算法是否就位?”

  

只要没有用于存储输出数据的单独数组,该算法就位。在输入数据中,删除重复项后,其余元素可以为空/空。