亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將成員分配到團隊而不重復?

如何將成員分配到團隊而不重復?

慕神8447489 2023-10-12 17:14:48
我想將團隊成員分配給特定數量的團隊,但任何團隊中都沒有重復的成員。如何刪除重復?您好,您能幫我解決這個代碼嗎?我必須為每個團隊分配團隊成員。教練可以輸入候選人數量、球隊數量以及候選人姓名。我可以使用鏈接列表輸入以下詳細信息,也可以為其生成隨機索引。我正在創建一個二維數組來存儲其中的團隊和成員的相應數量。但我無法確保每次索引在列表中都是唯一的,即沒有歧義。這是代碼// 我接受候選人數量并將其存儲在鏈接列表中 // 接受團隊數量 / 創建二維數組來存儲每個團隊的成員 //tn - 團隊 //mem - 每個團隊中的成員       System.out.println("how many teams do you want: ");        tn=sc.nextInt();        mem=num/tn;                String arr[][]= new String[tn][mem];        //shuffling the list        Collections.shuffle(name);        for(i=0;i<tn;i++)        {            for(j=0;j<mem;j++)            {                //calculating random index                index=random.nextInt(num);//storing element of list in 2d array.            arr[i][j]=name.get(index);            name.remove(index);//removing the index            }            //name.remove(index);        }如果有 4 個候選人名為 [ritu、vishal、mohit、harsh],則隨機索引會重復2 支球隊,則原始結果是球隊 1 [ritu,harsh] 球隊 2 [harsh,mohit]但預期輸出是團隊 1[harsh, ritu] 團隊 2[vishal, ritu]
查看完整描述

2 回答

?
開滿天機

TA貢獻1786條經驗 獲得超13個贊

目前,您從玩家池中隨機挑選成員。但被選中的球員仍留在池中。

解決方案:從池中刪除選定的玩家。

或者

因為您已經對球員池進行了洗牌:只需將他們按順序分配給每個后續球隊即可。


查看完整回答
反對 回復 2023-10-12
?
一只名叫tom的貓

TA貢獻1906條經驗 獲得超3個贊

我使用 LinkedList 及其方法 poll(),該方法


檢索并刪除此列表的頭(第一個元素)。


Scanner sc = new Scanner(System.in);

System.out.println("how many teams do you want: ");

LinkedList<String> name = new LinkedList<>(List.of("ritu", "vishal", "mohit", "harsh"));

int tn = sc.nextInt();

int mem = name.size() / tn;

String[][] arr = new String[tn][mem];

Collections.shuffle(name);

for (int i = 0; i < tn; i++) {

    for (int j = 0; j < mem; j++) {

        arr[i][j] = name.poll();

    }

}


查看完整回答
反對 回復 2023-10-12
  • 2 回答
  • 0 關注
  • 110 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號