algorithmic analysis