扶仲飒 2026-05-02 11:20:49
嘿,记得那年我在公司里做项目,有个排序算法的bug,差点让我抓狂。那天下午两点,我坐在工位的椅子上,眼前是一堆乱码,心里默念着“快搞定,快搞定”。突然,我发现一个排序算法,时间复杂度竟然是O(n^2),那可是我大学课本里说的“古老”算法啊。
我赶紧打开电脑,调试代码,三下五除二就找到了问题所在。原来是个数组越界的小错误,害得那个算法跑得像蜗牛。改完bug,再跑一遍,速度提升了不少,那叫一个爽快!
等等,我突然想到,如果当时用快速排序或者归并排序,可能就不会这么麻烦了。快速排序的平均时间复杂度是O(n log n),归并排序在最坏情况下的时间复杂度也是O(n log n),都比那个O(n^2)强多了。
那,如果再给我一次机会,我会不会选择用更高效的算法呢?还是说,有时候,那些“古老”的方法,也能给我们带来意外的惊喜?
92 赞