算法图解之快速排序
发布时间:2021-03-18 14:13:09 所属栏目:安全 来源:网络整理
导读:分而治之(又称DC) 书中举了一个例子,假设你是农场主,有一块土地,如图所示: ? 你要将这块地均匀分成方块,且分出的方块要尽可能大。 ? ? 从图上看,显然是不符合预期结果的。 那么如何将一块地均匀分成方块,并确保分出的方块是最大的呢?使用DC策略。 (1)
还是以上面的代码例子为例: int[] number = { 3,1)">32,1)">4321,1)">432,1)">153,1)">23,1)">42,1)">12,1)">34,1)">312,1)">43,1)">3214,1)">43214,1)">2432,1)">4532,1)">1234}; quick(number); } } 输出结果,如图: 半天看不到输出结果,而程序仍在运行中。如果将数组中的元素还原为原来那几个,则很快看到结果。 合并代码例子,如下: } } 输出结果,如图: 通过两者对比,我们很容易得出合并排序比快速排序快。 参考这个合并排序和快速排序执行时间比较 作者通过实验得出一个结论:当数据量较小的时候,快速排序比合并排序运行时间要短,运行时间短就表示快,但是当数据量大的时候,合并排序比快速排序运行时间要短。 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |