找回密碼
 注册
搜索
熱搜: 活动 交友 discuz
查看: 623|回復: 0

关于四柱预测安卓版刑冲合害算法问题

[複製鏈接]
發表於 2012-11-14 16:57:08 | 顯示全部樓層 |閱讀模式
关于四柱预测安卓版中刑冲合害断语的算法难点问题
开发四柱安卓过程中,一开始遇到的难点是十干评分取用神,但后来又遇到断语岐义问题,现在最后才遇到刑冲合害断语算法问题。这个刑冲合害断语,如果每句断语都要穷举组合循环一次,这将是十分痛苦的事,有没有办法简化呢,我苦思这个问题多时,终于想出一个优化算法如下:
先得到当前命局的所有总体的刑冲合害字符串,如:www=getAllStr("丑酉亥亥巳辰"),结果返回值www=";巳酉丑三合金;巳亥相冲;亥亥自刑;............."
假设月支为酉,用x代表月支,假设断语用到要判断月柱是否三合金局,就可以用正则表达式";*"+x+"*三合金;",这样就可以判断月柱有无参与三合金局中了,这样就不用每次穷举组合一次,只用正则表达式就行了,这样就大大简化了刑冲合害断语的编程了,这是我苦思多时的结果,现免费公布于众也。
 樓主| 發表於 2012-11-15 11:36:54 | 顯示全部樓層
大前天下载1500次,前天下载900次,昨天仅下载250次了,噢,MY GOD
回復

使用道具 舉報

 樓主| 發表於 2012-11-17 09:36:40 | 顯示全部樓層
上面那段算法我昨晚终于把它写成代码,调试通过了,证明可行OK
回復

使用道具 舉報

 樓主| 發表於 2012-11-17 13:59:50 | 顯示全部樓層
/////下面是示例用法,已证实OK
     //   String  strwww=mainPublic.getAllStr(mainPublic.eightWords[2]+mainPublic.eightWords[4]+mainPublic.eightWords[6]+mainPublic.eightWords[8]+mainPublic.eightWords[10]+mainPublic.eightWords[12]+mainPublic.eightWords[14]);
      //  str3=str3+strwww;
      //  str3=str3+"\n"+mainPublic.getOneStr(mainPublic.eightWords[4], strwww);
     //   if (strwww.matches(".*;[^;]*"+mainPublic.eightWords[4]+"[^;]*三合[^;]*;.*")){
      //          str3=str3+"\n"+"月支参与三合局";
      //  }
回復

使用道具 舉報

手機版|小黑屋|術數縱橫

GMT+8, 2025-10-25 03:44 PM , Processed in 0.021789 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回復 返回頂部 返回列表