|WikiProject Computer science||(Rated Start-class)|
According to Wikipedia: Naming conventions, I propose moving this page to the noun phrase In-place algorithm. Sound good? There shouldn't be a hyphen between "work" and "in" anyway. Deco 02:28, 24 Feb 2005 (UTC)
- Sounds good. I vote in favour :) --Clausen 22:09, 28 Feb 2005 (UTC)
In-Place is ambiguous?
It seems to me that there are two different meanings for "in-place": algorithms which modify their inputs so that the output is put in the same place as where the input was, and algorithms that only require constant additional space.
In a theoretical settting, I think the latter is standard. I think we should either decide that the first one is wrong, or emphasis the ambiguity.
--Clausen 05:47, 6 Jun 2005 (UTC)
- This is a tricky ambiguity. I thought about this and added a paragraph regarding it. I think it's outright wrong to say that an algorithm which replaces its input with its output is in-place even if it uses large amounts of auxilary storage (although this is done informally). More ambiguous is whether the output space should be counted in determining the auxilary space used, which is never done in theory but sometimes done in practice. Deco 08:20, 6 Jun 2005 (UTC)
The reason QuickSort is sometimes referred to as an in-place sort is because there's more than one definition of "in-place". Some reference materials will strictly mandate "constant" additional space, while others define it as meaning "constant or logarithmic" (O(N) or O(log N)) additional space.
So, depending on which definition you use, QuickSort can be in-place, or not. 18.104.22.168 (talk) 21:37, 30 June 2011 (UTC)