同一链表中的链表

  • 本文关键字:链表 c++ linked-list
  • 更新时间 :
  • 英文 :


我是C++的新手,我正在处理链表。但是,当我编写链表类时,我很困惑。我正在尝试为足球联赛编写代码。我正在尝试将每个团队保存在链表中,由于每个团队都有球员,我也想将它们存储在链表中。因此,链表类应该有一个成员来指向链表,该链表与我正在编写的类具有相同的属性。可能吗?

是的。球队列表的节点将包含球员列表。如果您无法使用std::list

struct Player
{
    Player* nextPlayer;
};
struct Team
{
    Team* nextTeam;
    Player* firstPlayer;
};

我很确定列表不是对此进行建模的最佳结构。

我更喜欢以下结构,因为您可能不希望总是在列表中使用球员和球队:

struct PlayerNode
{
    Player* item;
    PlayerNode* nextNode;
};
struct TeamNode
{
    Team* item;
    TeamNode* nextNode;
};
struct Team {
    // ...
    PlayerNode* firstPlayer;
};

这允许您将团队或玩家用作独立对象(不连接到其他团队/玩家)。但是在一个团队中,你也可以访问它的球员,我想这是可取的。

如果您使用的是C++则改用 STL。我正在用矢量解释一个例子

假设这是继承制您有 2 个联赛 1, 联赛 2每个团队有2个团队 团队1,团队2每队有10名球员P1,P2

一支球队的所有球员都可以存储在名为 temp_team 的向量中所有temp_team都可以推送到名为 temp_league 的向量所有temp_league向量都可以推送到名为footBall,League,watever的向量。

相关内容

  • 没有找到相关文章

最新更新