user2935569
user2935569

Reputation: 347

Algorithm - comparing performance

Suppose I have 3 algoithrms A,B and C to process n records.

algorithm A takes 80n + 40 steps
algorithm B takes n^2 + 30n steps
algorithm C takes 2^n steps

Decide which algorithms is most efficient when performing

i)  10 < n < 50 

The way I would solve this problem is by assuming n is equals to a value for example

for i) Assume that n = 20

so

algo A - 80(20) + 40 = 1640  steps
algo B - 20^2 = 400 steps
algo C - 2^20 = 1048576 steps

therefore algo B is most efficent.

I am not really sure whether I have evaluated the 3 algorithms performance correctly because I am just substituting a n with a value instead of using Big O notation?

Please advise. thanks

Upvotes: 1

Views: 105

Answers (1)

SomeWittyUsername
SomeWittyUsername

Reputation: 18348

Big-O notation deals with n that is arbitrary large, i.e. in order to evaluate O(n) the expression should be calculated for n-->infinity. In your case n is given, thus the overall running time can be precisely calculated, exactly the way you did it.

Upvotes: 1

Related Questions