用调用实现桶排序——更好的性能



我试图在C中使用桶排序算法实现一些东西,为了让算法工作,我需要手动将数组中的每一项初始化为0,但如果我用calloc代替,我将得到所有的值初始化为零。

唯一的区别我知道肯定是,通过使用calloc我把它全部在堆内存-这是一个很大的区别吗?

问题是——这两种方法的优缺点是什么?(性能等)

如果您需要分配和零填充数组,那么调用是最简单的方法。不要让零初始化驱动堆栈或堆分配之间的选择。独立做出选择。

不要纠结于分配和初始化的性能。你在排序。排序将占主导地位。您将无法可靠地度量分配和零初始化。与以往的性能一样,如果您真的想知道,请测量。

最新更新