1、 基于查表的lua版跑胡子判胡算法

将所有能胡的牌型和其对应的胡息放入表中

判断胡牌时,只需要查表得到胡息,如果表中没有此项,则不能胡,如果有,得到表中的胡息,加上跑、提、碰、偎的胡息,如果大于最低胡息,就能判断是否胡牌。

代码:https://github.com/yuanfengyun/qipai/tree/master/phzlib_lua

优点:速度极快

缺点:表会占用一定内存,如果用字符串存储,有60M左右,如果用二进制,则是20M

2、基于回溯的c语言版

1、去除不能拆解的坎

2、拆解小牌  分别深度拆解为顺子、小小大的绞、大大小的绞、二七十,小牌拆解完后,拆解大牌

3、拆解剩余胡大牌,大牌只需要去除 贰柒拾后,按顺子拆解就行

4、如果不能完成拆解,则不能胡

5、获取最大的小牌和大牌胡息和,然后加上坎的胡息、跑、提、碰、偎的胡息,如果能达到最低胡息,则胡了。

代码:https://github.com/yuanfengyun/qipai/tree/master/phzlib_c

跑胡子c语言算法,跑胡子胡牌算法相关推荐

  1. 跑胡子c语言算法,跑胡子胡牌算法Java版(带赖子、基于回溯算法)

    跑胡子规则 跑胡子,小写"一"到"十"各4张共40张,大写"壹"到"拾"各4张共40张. 砌牌:跑胡子为3人同玩,庄家砌 ...

  2. 跑胡子胡牌算法(带赖子、基于回溯算法)

    跑胡子规则 跑胡子,小写"一"到"十"各4张共40张,大写"壹"到"拾"各4张共40张. 砌牌:跑胡子为3人同玩,庄家砌 ...

  3. C语言麻将递归,C++数据结构与算法——麻将胡牌算法(二:完全胡牌算法)

    虽然单花色胡牌算法面试时写出来了,但是完整的胡牌算法却没有写,既然遇到了,秉着不抛弃不放弃的精神,当然不能原谅懒惰的自己了.下面这篇为一个完整的胡牌算法. 胡牌规则除了以下几点,其余与单花色胡牌规则一 ...

  4. node.js——麻将算法(五)胡牌算法的一些优化处理方案(有赖子版)

    以前有赖子判胡算法 http://blog.csdn.net/sm9sun/article/details/65632646 以前的帖子说明了处理赖子的两种方案:枚举代替及插空补缺,并最终选择了枚举遍 ...

  5. 麻将胡牌算法带癞子 python实现

    姐姐:你去帮我和闺蜜打麻将? 学霸哥哥:可是我不会打麻将呀! 姐姐:你不是学霸吗?我教你一个麻将公式,我闺蜜可是单身哟! 学霸哥哥:什么公式? 姐姐:麻将胡牌公式: AAA*M+ABC*N+BB,WM ...

  6. 包含癞子的麻将胡牌算法

    记录一下麻将的通用胡牌算法实现,只要满足M x ABC + N x DDD + EE 即可胡牌. 在这里先分析一下最简单的胡牌思路:先找出所有可能的将牌,若除去两张将牌之外的所有牌都能成扑,则可胡牌. ...

  7. 麻将普通胡牌算法JS版(含癞子,非轮训)

    记录一下麻将的通用胡牌算法实现,只要满足X*ABC + Y*DDD + EE 即可胡牌. 在这里先分析一下最简单的胡牌思路:先找出所有可能的将牌,若除去两张将牌之外的所有牌都能成刻或顺,则可胡牌. 将 ...

  8. 麻将胡牌算法(遍历+剪枝)

    麻将胡牌算法(遍历+剪枝) 简介 麻将胡牌算法及代码 1. 方法引入 2. 类型定义 2.1 牌定义 2.2 牌特征定义 3. 计算胡牌 3.1 检测十三幺牌型 3.2 检测七小对牌型 3.3 检测普 ...

  9. 麻将胡牌算法的一种设计及其分析

    马勇波  陈欣庆 (解放军理工大学工程兵工程学院研究生二队,南京 210007)       摘  要  文章通过一个二维数组定义麻将的数据结构,并在此基础上设计了一种判断麻将是否胡牌的算法,该算法主 ...

  10. 麻将胡牌算法——C#

    这里只介绍普通的麻将胡牌算法,也就是7个对子或者 1个对子+3*N; N = 三个顺子或者三个一样的 ,其中字牌(东南西北中发白)不能算顺子. 首先对于每张牌 它有牌的的数字 1-9,牌的种类 (万条 ...

最新文章

  1. 叮!你有一份2018英特尔人工智能大会的邀请函,请查收!
  2. 微软私有云系列----证书配置
  3. Maxon Cinema 4D Studio S22.114中文版
  4. Hadoop详解(九):Hadoop Streaming和Pipes原理和实现
  5. 华为平板解锁工具_2020年备战考研必选8款平板电脑 平板电脑推荐(12月最新版)...
  6. 为wmi执行例外_称之为例外?
  7. Android屏幕大小和密度对照表,以及px、dip、sp等像素单位的解释
  8. 全球首个商用5G网络首秀遭吐槽:信号太难找 用起来像4G!
  9. 【逆向工具】使用x64dbg+spy去除WinRAR5.40(64位)广告弹框
  10. 揭开PC-Lint9的神秘面纱
  11. 最多添加3个标签,每个标签最长6字,空格或逗号隔开
  12. c语言乘法怎么手写,发现要实现手写乘法计算过程也让我头疼
  13. linux 搜狗输入法隐藏状态栏
  14. 第三十一章 SQL命令 DROP DATABASE
  15. iOS中 断点下载详解
  16. Ubuntu语言设置英文
  17. 模板有函数模板和类模板,这个在上学期的java课里面就学了,C++应该是一样的。
  18. 好的代码是优质资产、莫让代码成为负债
  19. 10进制转换16进制C代码实现
  20. 解决Excel打开UTF-8编码CSV文件乱码的问题

热门文章

  1. 大型网站技术架构设计
  2. CM5800内置 100V/5A MOS 宽输入电压降压型 DC-DC
  3. c和java共同点_java和c语言的相同点
  4. [组装电脑DIY]#先马米立方#翻新速龙四核旧机
  5. 【CSS基础语法】CSS基础语法知识学习笔记汇总
  6. 步骤:申请google地图api_key,并成为结算用户
  7. 区块链共识笔记 --- POW 难度计算(ethereum)
  8. C语言有小数乘法,十道小数乘小数的乘法竖式计算并有答案
  9. JS转换微软Excel表格中的日期
  10. python django vue +VSCode 前后端分离