自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 四川麻将胡牌算法

一、写在前面川麻菜鸟(没错就是在下)打牌不行,弱点之一就是当牌型复杂(尤其是清一色)时不知道胡什么牌。这里用Python练习一下,判断给定的牌型是否听牌,以及听哪些牌。二、不多BB,代码注释也懒得写,反正看不懂你也打不着我wan = [int(i) for i in input('请输入"万"(以逗号间隔,若无请输入"0"):').split(',')]tiao = [int(i) + 10 for i in input('请输入"条"(以逗号间隔,若无请输入"0"):').split(',')]

2022-01-22 21:00:52 2479 1

原创 遗传算法在离散型工厂选址问题中的应用

一、背景介绍最近论坛上有一些同学私信要遗传算法的代码,这两天整理了一下,希望对大家有帮助。1.1 工厂选址问题(转自去年写的退火算法)工厂选址问题是运筹学中的经典问题之一,它描述的是在综合考虑工厂的建造成本、生产量,产品的运输成本,各地的需求量等因素后,如何制定适当的选址方案和物流运输方案来完成企业的生产经营活动。该问题的研究模型具有相当的普适应,其不仅仅在物流领域,还在生产生活,甚至军事中都有着非常广泛的应用。以离散工厂选址问题为例,假设有n个工厂为m个配送中心送货,每个配送中心的需求量为bj,j

2021-07-15 20:03:18 6750 27

原创 蒙特卡洛法模拟计算圆周率π

一、蒙特卡洛法介绍蒙特·卡罗方法(Monte Carlo method),也称统计模拟方法,是一种以概率统计理论为基础的数值计算方法,常用于特定条件下的概率计算问题。蒙特卡罗是摩纳哥的著名赌城,该法为表明其随机抽样的本质而命名。比如抛一枚硬币,假设我们开始不知道正面朝上的概率是多少,却有大量的时间来将硬币抛一万次,那么在一万次试验后,会发现正面朝上的次数接近一半,当然,抛的次数越多,概率越接近50%,蒙特卡洛方法是大数定律在实际应用问题上的体现。其优点十分明显,基本可以绕开问题本身的“黑盒”,不必考虑问

2021-06-26 18:24:51 6824

原创 解24点游戏

24点游戏相信大家比较清楚规则了:给出四个数,运用加减乘除四则运算如何使结果等于24?1、求解思路霸王硬上弓,用穷举法。穷举法是最直接暴力的解决方案:已知给出的四个数(如a,b,c,d),搭配任意的三个运算符(如+,*,/)以及两组括号,穷举出所有不同的排列组合方式(如(a/b)+(c*d)),再逐个计算结果是否等于24。2、具体实现第一步:产生4个数的所有排列,结果存放在 self.nums 中;第二步:产生3个运算符的所有组合,随后排列;operators_combination 存放三个运

2021-05-05 18:40:13 316 1

原创 Python宜昌房源数据获取与分析

一、写在前面周末闲来无事,最近在关心房子的问题,就突发奇想写个博客,正好把之前学习的知识复习整理一下,也为需要买房的同事提供一点点启发。整个搞完工作量不小,算是一个小项目。过程有两大部分,一是宜昌(夷陵区)房源数据获取,二是对获取的数据进行分析,发现一些有趣问题与现象。二、数据获取在网上获取数据首先想到的肯定是写爬虫。关于爬虫目前我只会写一些简单的,大神专属Scrapy框架暂时不会用,但对于常规数据爬取(电影信息、图片、评论等)已经够了。这里需要友情感谢一下链家网,对于爬虫新手简直不要太友好,不会担心

2021-01-24 18:41:34 2324 2

原创 Python实现超简易的学生信息管理系统

Python实现超简易的学生信息管理系统这里直接用data里存储的信息做数据库,当然也可以另外从文件里读取数据,操作并存储会更好,这里就这样将(hu)就(nong)一下吧O(∩_∩)O~import pandas as pddata = [{"ID":1001,"Name":"Mary","English_score":100,"Python_score":99,"C_score":96}, {"ID":1002,"Name":"Jack","English_score":98,"Py

2020-11-08 21:02:46 616

原创 寻找手机手势解锁共有多少种解法

寻找手机手势解锁共有多少种解法(1)先分析一下手势解锁必须满足的条件:1、解锁至少要连四个点2、不能跳跃连线。比如第一个点选1,那么在4未被选中的情况下是不可以从1直接连接7的。同理还有其他的禁忌,如195,132等等,意思分别是在中间5、2未被选中的情况下,1是不能直接和9、3直接连接的。所有不允许出现的情况在代码中用一个禁忌表来展示。但是,以519,5419等允许的方式举例,若想1和9直接相连,那么1、9中间的5必须在之前就已经连接过。(2)求解的思路是先穷举所有连接方案,再从所有方案里剔除被禁

2020-11-08 20:38:11 4287

原创 Python简易五子棋

Python控制台版五子棋1、写在前面最近从各种渠道接触到了一些有趣的Python小练习题,适合对Python基础有一定了解的童鞋练习,因为问题原型都能再生活中找到,所以码起来有一些趣味,自己也断断续续把代码敲完,现在自娱自乐地码出来吧,理解错的地方请多包涵。反正我也知道没人看,就当是打发时间,给自己的学习过程留一点印记吧。先来写一个Python控制台版的五子棋O(∩_∩)O~2、棋盘构建下棋嘛首先肯定是要棋盘,不然一直下盲棋谁顶得住?棋盘默认设置10*10大小,这里其实可用类来自定义棋盘大小,但是

2020-11-01 16:29:58 2857 3

原创 禁忌搜索在离散物流选址模型中的应用

def Get_Tanslist(pop,data,dic): transcost = [list(data[dic[i]]) for i in range(len(pop)) if pop[i] == 1] return transcost这里是第一个函数def Cal_total_capality(pop,capality): total_capality_lst = [capality[i] for i in range(len(pop)) if pop[i] == 1]

2020-07-21 10:42:53 883

原创 模拟退火算法在离散型工厂选址问题中的应用

1背景介绍1.1 工厂选址问题工厂选址选址问题是运筹学中的经典问题之一,它描述的是在综合考虑工厂的建造成本、生产量,产品的运输成本,各地的需求量等因素后,如何制定适当的选址方案和物流运输方案来完成企业的生产运输活动。目前认为该问题的研究模型具有相当的普适应,其不仅仅在物流领域,还在生产生活,甚至军事中都有着非常广泛的应用。1.2 模拟退火算法模拟退火算法(simulated Annealing,SA)来源于与固体退火的相似性,同时采用Metropolis准则(以概率接受新状态)做为接受准则。所谓的固

2020-07-19 09:38:28 5096 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除