I'm working in the time analysis for an algorithm with two optional optimizations variant applied and followed next approach:
- Create inputs of different lengths for the algorithm
- Using these inputs to execute the two algorithm variants and count the asymptopic number of operations (steps)
- Graph the operations count
Graph typical time complexity curves and compare with result:
- Polynomial graph graphed by using $N^6$
- Quasy-Polynomial graphed by using $2^{LOG(N)^6}$ ($K=6$)
- $N$ = input length
I'm a newbie on this kind of analysis and some advise on how to proceed to complete the analysis will be welcome as I feel I'm doing something wrong.
So the questions is, how is the right way/process to do a Time Analysis for an algorithm.
Just in case this helps I provide the raw data for both algorithm Optimizations
Optimization 1 (# of steps)
==========
18 168.444
19 334.625
20 671.042
21 1.869.381
22 2.664.066
23 5.318.839
24 10.656.909
25 21.008.570
26 42.226.829
27 84.365.073
28 143.803.905
29 343.807.896
30 676.068.035
31 1.372.590.031
32 2.742.788.213
Optimization 2 (# of steps)
==============
18 109.533
19 65.720
20 250.565
21 1.324.926
22 866.908
23 2.638.451
24 4.328.395
25 12.265.480
26 15.808.379
27 43.385.582
28 75.952.700
29 206.996.787
30 267.098.278
31 730.593.681
32 1.278.315.507