teststorrelser = [10:10:100, 200:100:1000, 1000:1000:10000, 10000:10000:100000];
reps = 20;
res_gradvis_dobling = zeros(reps, length(teststorrelser));
res_utvid_liste = zeros(reps, length(teststorrelser));
res_preallokering = zeros(reps, length(teststorrelser));
for i = 1:length(teststorrelser)
n = teststorrelser(i);
for j = 1:reps
fprintf('#%d - lag_lang_liste_gradvis_dobling(%d)\n', j, n);
tic
lag_lang_liste_gradvis_dobling(n);
res_gradvis_dobling(j,i) = toc;
end
for j = 1:reps
fprintf('#%d - lag_lang_liste_utvid_liste(%d)\n', j, n);
tic
lag_lang_liste_utvid_liste(n);
res_utvid_liste(j,i) = toc;
end
for j = 1:reps
fprintf('#%d - lag_lang_liste_preallokering(%d)\n', j, n);
tic
lag_lang_liste_preallokering(n);
res_preallokering(j,i) = toc;
end
end
fprintf('%15s %25s %25s %25s\n', 'Listestørrelse', 'Gradvis dobling [ms]', 'Utvid liste [ms]', 'Preallokering [ms]');
fprintf('%15d %25.3f %25.3f %25.3f\n', [teststorrelser; 1000*[mean(res_gradvis_dobling); mean(res_utvid_liste); mean(res_preallokering)]]);
plot(teststorrelser, mean(res_gradvis_dobling), 'g-', teststorrelser, mean(res_utvid_liste), 'm-', teststorrelser, mean(res_preallokering), 'b-'); |