gpt4 book ai didi

c# - 从数组中获取最大值而不排序

转载 作者:行者123 更新时间:2023-11-30 19:19:55 24 4
gpt4 key购买 nike

我正在创建一个比较简单的游戏,我需要跟踪玩家的得分。 25个人同时玩这个游戏,这些玩家会被放到一个数组中:

public static int[] allPlayers = new int[25];

比方说,根据正确答案,当前玩家将获得 100 分。因此,如果玩家 1 已启动,则代码将类似于以下内容:

allPlayers[0] += 100;

如果玩家 3 上场,则正确答案的代码将是:

allPlayers[2] += 100;

在游戏结束时,我想确定哪个玩家的积分最多。请注意,我不能简单地对该数组进行排序,因为我需要数组的顺序保持不变。如果顺序完好无损,我将无法分辨哪个玩家的名字指向哪个点。

我很想听听大家的意见,期待您的回复。

非常感谢,

埃文

最佳答案

无需排序,只需遍历数组,跟踪目前看到的最大值和该值的索引。

  var largest = -1;
var player = -1;
for (var i = 0; i < allPlayers.Length; ++i)
{
if (allPlayers[i] > largest)
{
player = i;
largest = allPlayers[i];
}
}

Console.WriteLine( "Player {0} wins, with score {1}", player, largest );

处理关系留作练习。

关于c# - 从数组中获取最大值而不排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7591902/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com