91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

[cocos2dx]斗地主制作之"排序”算法

發布時間:2020-07-22 23:59:09 來源:網絡 閱讀:346 作者:蓬萊仙羽 欄目:開發技術

制作斗地主的時候,發完牌還有一個牌的排序是要考慮的問題之一,這里的排序并不是一般的簡單的冒泡排序,我的思想是將牌排成0-51,以13作為一個基準分類,例如0-12分別對應的是紅桃A-K,13-25對應的是黑桃A-K,26-38對應的是方塊A-K,39-51是梅花A-K。然后服務器將分給每個玩家的17個數轉化成牌的數組進行排序,下面給出算法,這里感謝@灰太龍的指點!

Code:

using System; using System.Collections.Generic; using System.Linq; using System.Text;  namespace 隨機排序 {     class Program     {         static void Main(string[] args)         {             int[] array = { 1, 2, 6, 33, 44, 23, 36, 5, 9, 14,0,14,15 };             //洗牌從大到小             //int[] array = { 1, 2, 3, 4, 5, 6,0 };             BubbleSortFunction(array);             foreach (int i in array)             {                 Console.Write(i + ",");             }         }          //冒泡排序(從數組的起始位置開始遍歷,以大數為基準:大的數向下沉一位)         private static void BubbleSortFunction(int[] array)         {             int length = array.Length;             int temp;             bool hasExchangeAction; //記錄此次大循環中相鄰的兩個數是否發生過互換(如果沒有互換,則數組已經是有序的)              for (int i = 0; i < length - 1; i++)    //數組有N個數,那么用N-1次大循環就可以排完             {                 hasExchangeAction = false;  //每次大循環都假設數組有序                  for (int j = 0; j < length - i - 1; j++)    //從數組下標0處開始遍歷,(length - i - 1 是刨除已經排好的大數)                 {                     int p1 = array[j] % 13;                     int p2 = array[j + 1] % 13;                     if (p1 == 0) p1 = 14;                     if (p2 == 0) p2 = 14;                     if (p1 == 1) p1 = 15;                     if (p2 == 1) p2 = 15;                     if (array[j] == 52) p1 = 16;                     if (array[j + 1] == 52) p2 = 16;                     if (array[j] == 53) p1 = 17;                     if (array[j + 1] == 53) p2 = 17;                     if (p1 < p2)    //相鄰兩個數進行比較,如果前面的數大于后面的數,則將這相鄰的兩個數進行互換                     {                         temp = array[j];                         array[j] = array[j + 1];                         array[j + 1] = temp;                         hasExchangeAction = true;   //發生過互換                     }                 }                 if (!hasExchangeAction) //如果沒有發生過互換,則數組已經是有序的了,跳出循環                 {                     break;                 }             }         }     } } 

結果:

[cocos2dx]斗地主制作之"排序”算法


說明:按照我上面所說的規則,會發現其實轉化成牌其實是從大到小排序的,最左邊是紅桃2,然后是黑桃2,然后是紅桃A,這樣依次類推!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

晴隆县| 运城市| 高雄市| 平顺县| 九龙城区| 日喀则市| 宣恩县| 抚宁县| 廉江市| 抚顺市| 南昌县| 罗甸县| 灵寿县| 侯马市| 宁化县| 安徽省| 漳平市| 济宁市| 天水市| 顺平县| 台北县| 永登县| 三原县| 礼泉县| 政和县| 图们市| 宣化县| 望谟县| 宝清县| 澄江县| 宝丰县| 宁城县| 潮安县| 汤原县| 渝中区| 宁国市| 威远县| 伊宁市| 丽水市| 英山县| 景东|