Computer algorithm that operates directly on an input data structure, without needing a full temporary copy