指针使程序更高效、更快。但是结构如何影响程序的效率呢?它会使速度更快吗?仅仅是为了代码的可读性还是什么?我可以举个例子来说明它是如何做到的吗?
最佳答案
指针只是指向一个内存地址,它们与效率和速度无关(它只是一个变量,存储一些指令执行所需/有用的地址,仅此而已) 是的,但是数据结构以多种方式影响程序/代码的效率。它们可以增加/减少算法的时间复杂度和空间复杂度,并最终增加/减少代码(在其中实现算法)。
例如,以数组和链表为例
数组:在内存中按顺序分配的一定量的空间
Linkedlist:内存中随机分配的一些空间,但通过指针连接
在所有情况下,两者都可以使用(假设没有太多繁重的空间分配)。但由于数组是连续分配检索比链表中随机分配更快(每次获取下一个分配 block 的地址,然后获取数据)
因此这可以提高代码的速度/效率
有很多这样的例子可以向你证明为什么数据结构更重要(如果它们不那么重要为什么要设计新算法以及为什么你要学习它们)
关于c - 结构如何影响效率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21520213/