外部精选
软件工程
#开发者实时流研究人员提出「难以置信它能排序」算法:看似无效却真能排序
来源标题:I Can't Believe It Can Sort
一种名为「I Can't Believe It Can Sort」的极简排序算法被提出,其伪代码看似无法完成排序,实际却能正确工作。该算法用嵌套循环反复比较交换元素,时间复杂度为 O(n^2),效率远低于快速排序等常用算法。伪代码逐字取自 Stanley P. Y. Fung 的研究论文《Is this the simplest (and most surprising) sorting algorithm ever?》。
Hacker News 最新Muhammad5232026/11/13 · 今天2 分钟阅读
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
「难以置信它能排序」算法是一个非常简单的低效算法。它之所以得名,是因为如果你只看伪代码,根本不会觉得它真的能排序,但它确实可以。伪代码如下: for i = 1 to n do for j = 1 to n do if A[i] < A[j] then swap A[i] and A[j] 这段伪代码逐字摘自 Stanley P. Y. Fung 的研究论文《这是有史以来最简单(也最令人惊讶)的排序算法吗?》。你可以在这里找到这篇论文。 从伪代码可以看出,I Can't Believe It Can Sort 是一种简单且低效的排序算法,它使用嵌套循环反复比较和交换元素,直到数组有序。该算法的时间复杂度为 O(n^2),因此效率远低于快速排序或归并排序等知名排序算法,后者的平均和最坏情况性能都更好。 以下是该算法的一个 Java 实现:
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。