c++ - 链表实现链表

标签 c++ arrays list struct linked-list

我最近看了链表以保存大量数据。然而,我坚持想出一种为链表的链表保存数据的好方法。

下面是我试图完成的伪代码

struct Student
{
    string Name;
}

struct Classroom
{
    string Teacher;
    <list> Student *student;
};


struct School
{
    string School_Name;
    <list> Classroom *room;
};

struct State
{
     string State_Name;
     <list> School *school;
};

我想知道这是否是您在链表中实现链表的方式。 所以当我通读一个 XML 文件时。我可以在一个州下分配多所学校,并将多个教室分配给一所学校等等。

最佳答案

实现总是取决于您要解决的什么问题。在不了解问题性质的情况下,很难说您的实现是否最佳。这绝对是合法的(尽管我会使用实际列表作为成员而不是指向列表的指针——后者似乎没有令人信服的理由)。您的数据是一次写入多次读取吗?您是否希望按顺序阅读所有学生(例如)?你打算经常增加新学生吗?根据这些答案,可以在程序中选择最佳表示。

不过,上面的伪代码仍然可以工作。

关于c++ - 链表实现链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19960932/

相关文章:

c# - 扩展 List<T> 违反开闭原则

python - 如何在 MySQL 中从 List 和 MySQL 生成的数据中插入具有增量值的行

c++ - 这里如何使用模板来创建固定大小的 map ?

c++ - (boost like) header only libraries 如何影响编译大小?

c++ - 试图将两个类放在同一个命名空间的不同文件中,但只有第一个 #included 类有效

c++ - 运算符 != 不匹配(操作数类型为指针和对象)

java - 创建一个数组对象 Student 并将其添加到 ArrayList

java - 调用全局数组

java - 无法在 Java 中创建...的通用数组

python - 如何比较两个集合,其中每个元素都是列表?