【总结】【随机化算法】

本文介绍了随机化算法的基本概念,将其分为三类:有错误概率但最终错误极低的,时间不确定但能保证解决方案的,以及精度要求不高的问题。通过具体的套路示例,如元素分组和最优解选择,解释了如何利用随机化算法解决实际问题,并鼓励读者分享更多的随机化算法应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

考试就像一盒巧克力,你永远不知道你恶心了两个小时的T1是不是随机化算法


简介

作为一种算法,更不如说是一类套路,这类套路又大致可分为三大类:
1、有错误概率,但经过数次操作后,每次都错的概率极低。(此类大多为最优性问题)
2、时间不确定,但经过数次操作后,仍未出解的概率极低。(此类大多为存在性问题)
3、精度要求不高,可以通过其他模型大致推断解的范围。(例如多边形面积≈点打在多边形内的概率*打点范围面积)

常规套路

一些具体的套路有:
1、把n个元素平分为两组(也可能“选”或“不选”这两组)。
这时可以随机钦定某个元素在某一组,求总贡献。之后再钦定它不属于这一组,继续随机。

这时,一个数在错误的集合的概率为12\frac 1 221,经过若干次(30~100次左右),还未达到最优解的概率即可以忽略不计((12)n)({(\frac 1 2)}^n)((21)n)

2、从n个元素中选出m个,组成最优答案。(要求m极小)

这时,可以把n个元素随机映射到m种,然后每种内部视为相同,求最优解(例如https://blog.youkuaiyun.com/qq_34454069/article/details/88359212)

这种情况下,最优方案的m个元素恰好分在不同组的概率为m!mm\frac {m!} {m^m}mmm!。多做几次求最优解,正确的概率就相当大了。

3、根据题目给的一些性质,就随机选。。。。
这似乎不算套路。。。

比如:类完全图存在哈密尔顿回路的概率很大。。。。

如果读者还有其他方法,请务必留言

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值