Je suis relativement nouveau dans l'analyse des algorithmes et je prends un cours connexe sur Coursera où je suis arrivé à Cross K Way Fusion Sort.
La complexité temporelle de 2 voies Sort Sort est n log2 n
, de 3 voies de fusion est n log3 n
et sur 4 fusion de fusion est n log4 n
.
Mais, dans le cas de K-Way, la complexité est NK ^ 2. C'est parce que nous faisons attention à la fusion de l'algo; (2n + 3n + 4n...kn)
.
Mais, dans le cas d'algorithmes de 2, 3 et 4 voies, nous accordons une attention particulière à l'appel récursif d'une fonction; (2T(n/2) + c.n)
.
Quelqu'un peut-il expliquer pourquoi cela en est ainsi? Ou corriger mon approche de cette question.
la profondeur de la récursion est log n/log k
,
coûts de fusion n*log k
, à l'aide d'un tas min de tas pour log k
par élément
ainsi, nous venons à T(n) = n* log k + K* T(n/k)
qui (sauf que je ne me trompe) devient n log n
(- réellement n (c_1/k+log(n))= n/k + n*log(n)
Mais le n/k
devient insignifiant dans Big O)