<form id="dlljd"></form>
        <address id="dlljd"><address id="dlljd"><listing id="dlljd"></listing></address></address>

        <em id="dlljd"><form id="dlljd"></form></em>

          <address id="dlljd"></address>
            <noframes id="dlljd">

              聯系我們 - 廣告服務 - 聯系電話:
              您的當前位置: > 關注 > > 正文

              天天消息!掃雷和空當接龍freecell:算法深度優先

              來源:CSDN 時間:2023-02-10 13:46:18

              研究掃雷和空當接龍 freecell


              (資料圖片)

              搜到幾個代碼, 總是沒有源代碼, 不爽

              就寫了個

              本來用a* 算法, 好像出不來

              然后使用深度優先, 有些可以快速得到結果.

              最大移動張數計算方式:(可用單元+1)×(閑置列+1)

              代碼放到

              https://bird-self-lib.googlecode.com/svn/branches/FreeCellCalculate

              下載應該不需要權限

              一張牌

              Card

              內部2種表達方式

              1. 從0-52的序列, 把4套牌都排序了. 梅花的0-12, 方塊的...這個占字節少,快速.

              2. 用type和number,  花色是type, 1-10,jqk 這些是number, 這個方便調試.

              class CCard    {        #if CARD_1_BYTE        UINT8       m_num;#else        eType       m_type;        eNumber     m_number;  //0-9(1-10), 11- J, 11- Q, 12- K#endif    };

              一個狀態 叫一個State, 如圖

              左上角是bench, 右上角是拍好序的sorted

              下面就是牌. 每豎是一個list

              每豎行是一個column,

              class CState{public:        UINT                    m_id;    UINT                    m_idxFather;    bool                    m_hasGenSon;    ListInt                 m_idxSon;    UINT16                  m_value;    UINT8                   m_step;    UINT                    m_hash;    //std::string             m_str;    VecCard                 m_vecIdxSorted;   //4 vec, save show card    VecCard                 m_vecBench;       //4 card     typedef std::vectorVecListCard;    VecListCardm_vecVecIdx;};

              算法,深度優先

              從開局的state開始

              生成他的所有子步驟, 每個都是一個son state

              每個都算出一個value

              然后把最低value的當作當前節點,

              再次遍歷

              找到完成的狀態.

              如果找不到就依次退回到父節點.

              責任編輯:

              標簽:

              相關推薦:

              精彩放送:

              新聞聚焦
              Top 中文字幕在线观看亚洲日韩