我有一个简单的问题:
我参加了数据结构课程,我们正在编写一个程序来查找城市之间的距离。它说我们应该将城市名称作为键(优先使用哈希表)并将节点作为表中的值。我想知道节点是否具有我指定的值,或者它们只是占位符在内存中。
答案 0 :(得分:1)
问问你的教授听起来是一个很好的问题。通常,这类问题中的节点可能是某种对象或数据结构,它指定它连接到的其他节点(城市),以及可能与每个相邻节点的距离。因此,您可以将整个节点存储在哈希表中,或者您可以将它们静态存储在其他位置,并在哈希表中指向它们。如果这些内容没有任何意义,您可以尝试在问题中提供更多详细信息,或者我最好的建议是与您的教授会面以获得一些额外的指导。
答案 1 :(得分:0)
节点将是代表每个(一个)城市的基本结构(您创建的),并且还封装了每个城市需要存储的各种指针。
struct CityNode {
char *cityName;
// Other data
// Various pointers required by the algorithm.
}
您可以将其命名为任何名称,但将其称为节点是一种常态。
现在,您可以在拥有节点时访问城市名称。但是当你在给出名字时需要节点时,这是不可能的 因此,为了便于访问节点,系统要求您创建一个哈希表。
希望这有帮助。