数据结构和算法
wangbin579
TCPCopy作者,MySQL内核顶级专家,书籍<<The Art of Problem-Solving in Software Engineering:How to Make MySQL Better>>作者
展开
-
数据结构与算法:为何小数据量下插入排序无敌?
从数学角度看,直接插入排序似乎并不无敌,但它为何被广泛使用呢?即使在基础库中实现快速排序时,也会尽量使用直接插入排序,尤其在数据量较小(例如C++标准库中小于16个元素)时。这是因为直接插入排序的思想与计算机体系架构高度契合,顺序处理使其非常适合cache操作,效率极高。在算法复杂度尚未显著影响性能时,cache友好性的优势则显得尤为重要。原创 2024-09-20 10:39:51 · 298 阅读 · 0 评论 -
数据结构与算法:快速排序高效性的奥秘
从数学角度来看,快速排序似乎并没有明显的高效理由,但它为何如此高效呢?这主要是因为快速排序的思想与现代体系架构高度契合,非常适合cache操作。在切分过程中,它采用顺序访问数据,而非跳跃式访问,这样充分利用了当前体系架构的优势,从而显著提升了性能。因此,学习算法时必须与计算机体系架构相结合,才能真正掌握算法的精髓,并在各种优化中充分发挥知识的力量。原创 2024-09-20 10:32:58 · 541 阅读 · 0 评论 -
你真的掌握数据结构与算法了吗?
下面十大问题,可以评估你是否真的掌握了数据结构和算法。原创 2024-09-19 11:07:33 · 647 阅读 · 0 评论 -
排序算法的实验
<br />3年半前,我做了排序算法的实验,对比的算法有如下:<br /> 1)heapsort 堆排序<br /> 2)mergeSort归并排序<br /> 3)quickSort快速排序<br /> 4)lib sort 库中的排序方法,改进的快速排序<br /> <br />采用的数据是int数值,记录时间为秒<br /> <br />记录如下:<br /> <br /> 1)对于数据量很小的时候(100个元素时)<br /> heapsort : 0.000020<br原创 2011-04-16 14:54:00 · 954 阅读 · 0 评论