关于那些奇葩的排序算法……

~~机房划水~~

一、猴子排序

基于无限猴子定理的排序算法,

1.0、简单介绍

爱丁顿在1929年阐述过一个“无限猴子理论”,就是说“如果许多猴子任意敲打打字机键,最终可能会写出大英博物馆所有的书”。

书可以看作是字母的组合,大英博物馆所有的书作为有限集是包含在字母的组合这个无限集之中的。有限集在无限集中出现的概率不为零,这也是你说“概率肯定不为零”的原因。问题就在于“字母的组合”和“许多猴子任意敲打打字机键”两个无限集是否等价。

如果这些猴子都打出的是同样而且重复的东西,能打出现大英博物馆所有的书吗?如果说没有条件可以保证猴子都打出的是同样而且重复的东西,那么有条件可以保证猴子打出东西的不是同样而且不重复吗?额,这只是一个悖论。

另,千万不要小看无限猴子定理,在大模型的训练中,无限猴子是可以转换成序列猴子,为大模型训练提供了无限可能,感兴趣参考无限猴子定理:大模型训练的无限可能性 - 知乎 (zhihu.com)

2.0、代码实现

时间复杂度可以说是十分的不稳定,复杂度范围呢?额,大概在O(1)O(\infty)。也就是说,猴子可能运气很好,只用了一秒就打印出了正确的字符串,反之,猴子可能从宇宙诞生时开始打,到2024年依然在打根本没打对有点惨啊……

下面给出排序代码:

# author: code lin
# datetime: 2024/5/19 11:21
# function: 猴子排序算法

import random
import time


def is_sorted(arr):
    # 检查数组是否已排序
    for i in range(1, len(arr)):
        if arr[i - 1] > arr[i]:
            return False
    return Tru
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值