最近在研究麻将的算法,自己手写了一份记录一下以后查阅 只实现了听牌,翻数计算还没有做处理,后期在写
麻将万1-9
条11-19
筒21-29
核心:枚举出对子,然后找出刻子,找出顺子
直接上代码:
public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>(); list.add(4); list.add(4); list.add(4); list.add(14); List<Integer> integers = new HuPai().checkTing(list); System.err.println(list); System.err.println("可以胡的牌:"+integers); } public List<Integer> checkTing(List<Integer> list){ List<Integer> hu = new ArrayList<Integer>(); for(int i = 1;i<30;i++){ ArrayList<Integer> pai = new ArrayList<Integer>(list); pai.add(i); List<Integer> integers = removeDuizi(pai); if(integers.size()<1){ continue;