`使用命名空间标准;
class location
{
public:
int city;
};
class flightconnect
{
int arvtime;
int deptime;
int arvcity;
public:
flightconnect(int _a, int _d, int _c) { arvtime = _a; deptime = _d; arvcity = _c;}
int getdeptime() { return deptime; }
int getarvtime() { return arvtime; }
int getarvcity() { return arvcity; }
};
struct graph
{
location* vertex;
list<flightconnect> *adj;
};
void addloc(int a,graph *flight)
{
flight = new graph;
flight->vertex->city=a;
//what should come in the next line?
flight->adj = flight->adj.append(a);
}
void addflight(int at,int dt,int a,int d,graph *flight)
{
flightconnect node(at,dt,d);
flight->adj[a].push_back(node);
}`
在函数void addloc(int a,graph*flight)
中,您正在初始化图本身。
flight = new graph;
您应该初始化新城市的邻接列表。请参阅此处:C++列表和指针
您可以使用map将城市名称存储在字符串中。
作为一项练习,我必须建立一个卫星导航系统,规划从一个位置到另一个位置的最短和最快路线。它必须尽可能快,而不需要使用太多内存。 我很难决定使用哪种结构来表示图形。我知道矩阵更适合密集图,列表更适合稀疏图。我更倾向于使用列表,因为我认为添加顶点将是这个程序中最累人的部分。 我只是想听听你们的意见。如果我把一个典型的路线图看作一个图形,其中不同的位置是节点,道路是边缘。你认为它是稀疏的还是密集的?在这种
在书中,他们做过这样的宣示: 我应该如何将下面图的输入作为邻接表并输出它的邻接表表示?假设,edge的每个成本是10。
我刚开始使用图形,我正在尝试建立一个使用城市的邻接列表。这两个城市被发送到addRelations方法中。我试着说,如果已经没有一个顶点与第一个或最后一个字符串匹配,就用还不存在的字符串创建一个新顶点。现在,我得到的只是一个空指针异常在行的*。有没有人知道我做错了什么或者我应该做什么? 主:
此图包含虚拟顶点。如何使用邻接表存储顶点的状态信息?应该存储每个顶点的输出边。 我用了简单的邻接表。但在这里,例如,v14有两组不同的输出边(一组没有输出边,另一组有两个输出边)。我应该使用什么数据结构来表示这样的虚拟节点。
大家好:)今天我正在提高我在图论和数据结构方面的技能。我决定用C++做一个小项目,因为我已经有一段时间没有用C++了。 我想为一个有向图做一个邻接表。换句话说,看起来像: 这将是一个有向图,其中V0(顶点0)对V1和V3有一条边,V1对V2有一条边,V2对V4有一条边,如下所示:
B)设是带有向图(无环多边)的一个邻接矩阵,其中是边到的一个权重。如果没有这样的边并且对于evrey我们有。矩阵。槽表示什么?最小权重?还是...? 知道吗? 编辑:我的意思是这些算法在图中找到哪一个?找到最大重量?最小重量?什么也没找到?