网站首页 > PHP教程> 文章内容

开发中遇到奇葩算法十万程序员讨论七天都给不出合理解释

※发布时间:2018-7-30 1:42:54   ※发布作者:habao   ※出自何处: 

  如果有人问你哪种排序算法最奇怪,可能你会先在慢排序、Stack 排序、意大利面排序等常见排序算法中「搜索」了。 有人在 Quora 上也发帖问了这个问题。于是乎,各种脑洞大开的奇特算法就被列出来了。它们可能存在性能问题或无法实现,但是不可否认其创造性

  这是一个非常幽默却没什么用的排序算法。它基于“合而不治”的原则(分治算法基本思想“分而治之”的反义词,文字游戏),它由 Andrei Broder 和 Jorge Stolfi 于 1986 年发表在论文《Pessimal Algorithms and Simplexity Analysis(最坏排序和简单性分析)》中,伪代码如下:

  从 StackOverflow 上搜索标题含有“数组排序”的帖子,复制粘贴并运行其中的代码片段,直到数组排好序。我认为这种排序算法事实上验证了整个数组。它被发表在xkcd网站上,这里有一个在线版的具体实现stacksort

  这是一种线性时间算法,是需要 O(n) 空间的稳定排序。它需要并行处理器。简单来说,假设我们排序一列自然数。排序方法需要使用很多根生的意大利面条。

  将数据按比例转换成表示意大利面条长度的数字。李悦是谁儿子 在每根面条上写下数字,并将面条折断成数字表示的长度。 把所有面条攥成一捆并把底部在平面上敲击。 取出最突出的一根面条,也就是最长的一根,获取的数字,转换成原始的数据并记录下来。 重复这个过程直到处理完所有意大利面。

  无论你的数组状态是什么样的,它都算是排好序的。 解释:原始输入按照某种顺序的概率是 1/(n!)。概率是如此小,(当前的顺序)归结于运气成分显然是的,所以它是按照“智能设计”排序过的。所以完全可以说数组已经排好序了,只是不是我们传统意义上的“升序”。如果按照我们传统观点对它进行操作,只会让它乱序。(“智能设计”涉及教和哲学,不过多解释)

  分享之前我还是要推荐下我自己建的PHP学习群:646984879,都是学PHP开发的,如果你正在学习PHP,小编欢迎你加入,今天分享的这个案例已经上传到群文件,大家都是PHP党,不定期分享干货(只有PHP开发相关的),包括我自己整理的一份2017最新的PHP资料和零基础入门教程,欢迎初学和进阶中的小伙伴。

  本文由 325游戏(m.325games.com)整理发布

相关阅读
重庆学习网zslpsh,0755深圳房产人才招聘网,拾年网90后,anedc股票,最新电影下载淘娱淘乐,重庆中学生网高考,重庆中学生网高考,学习重庆方言网,重庆中学生学习方法,重庆俗语网,中学生网zslpsh,0755深圳交友网,重庆初中生,贵州重庆方言网,025新闻网,西南重庆方言歌曲,025南京交友网,重庆农家乐美女,观赏蟹种类zadull,云南重庆方言网,重庆中学学习网,028成都交友网,推广taoyutaol,西南四川方言网,观赏龟论坛zadull,四川重庆方言网,022天津交友网,重庆中学生网家长,鹦鹉鱼zadull,重庆俗语,电影淘娱淘乐,taoyutaole娱乐,华夏视讯网,0755深圳旅游招聘,昆明重庆方言网,淘娱淘乐影视,www.00game.net,观赏鱼zadul,重庆高考zslpsh,重庆中学生网高考,027房产招聘网,坝坝舞wagcw,西南重庆方言网,贵州重庆方言网,重庆言子儿网,热带鱼zadull,重庆高考zslpsh,0755深圳旅游招聘网,淘娱淘乐影视网,0571.361.cm,重庆方言学习网,028成都新闻,异形观赏鱼种类,影视网淘娱淘乐,最新电影下载淘娱淘乐,0773桂林论坛,拾年网80后动画片,观赏蟹论坛zadull,观赏龟繁殖教程,重庆一中zslpsh,重庆俗语网,广场舞wagcw,观赏虾的种类zadull,观赏鱼观赏虾观赏龟,西南方言网,观赏鱼之家论坛zadull,战争前线辅助00game,西南重庆方言小说,重庆中小学zslpsh,推广taoyutaol,战争前线论坛00game,0871交友网,025南京新闻网,重庆言子儿网站,娱乐taoyutaole,022天津交友网,025新闻网,重庆中学生网学习,022天津交友网,重庆方言歌网,www.120.cm健康网,anedc股票,重庆初中生