网上开源的麻将的代码比较少,本文主要介绍一个麻将的胡牌的算法。
这个麻将系统中1个麻将用一个已经封装好了的类Card来表示,Card有两个属性:Type和Num。Type表示麻将的种类(条、万、筒),Num表示某一类麻将牌面的大小。
Win函数(胡牌函数)主要包含七对 和 "3,3,3,3,2"这两种普通的种类,其中 "3,3,3,3,2"主要是通过递归算法来实现。
Analyze(int aKindPai[],bool ziPai)函数主要是判断手上的麻将是不是全是由刻牌和顺牌组成的,是的话返回true,不是的话返回false。程序主要是递归算法来实现的。