使用链表或数组进行垄断

Using a Linked List or Array for Monopoly?

本文关键字:垄断 数组 链表      更新时间:2023-10-16

我正在为一个学校项目制作一个大富翁游戏,用C++写的。我做的第一件事是实施董事会。对我来说,每个磁贴都是一个包含信息和功能等的对象,这对我来说很直观,但我无法决定这些是否应该包含在链表或数组中。

这对于链表是有意义的,因为我可以简单地将最后一个平铺指向第一个平铺,但使用数组似乎也更有效,因为我可以立即访问 Tile[5]。

谁能澄清一下哪个更适合这个目的?

  • 这是一个固定的大小。 这否定了链表大约 90% 的优势。
  • 你永远不会按顺序访问它(除非,而不是骰子,每个人每次只移动一个方格),但总是随机的。 这大约是阵列优势的 90%。
  • 您引用使用链接列表的一个原因以不同的方式处理。( new_position = (current_position + roll) % 40;

因此:毫无疑问,您希望使用数组。