关于返回相连节点和相连边的问题

来源:8-1 有权图

慕移动9586716

2021-05-04

bobo老师,您好,在这一节中,我用了你在上一章7-7中的图并加上了相应的权值在草稿上跑了一遍
1.我根据索引,最后返回的还是节点呀,而你下面这部分代码中的注释说,返回的是边,这是为什么呀?
2.以至于我在8-3节中prim算法中对visit()函数对相连边的操作就不太理解了?

 // 返回图G中与顶点v相连接的第一个边
        Edge<Weight>* begin(){
            index = 0;
            if( G.g[v].size() )
                return G.g[v][index];
            // 若没有顶点和v相连接, 则返回NULL
            return NULL;
        }

        // 返回图G中与顶点v相连接的下一个边
        Edge<Weight>* next(){
            index += 1;
            if( index < G.g[v].size() )
                return G.g[v][index];
            return NULL;
        }

写回答

1回答

liuyubobobo

2021-05-05

我没有特别理解你的问题。begin 和 next 返回的是 Edge<Weight> 的指针,而 Edge<Weight> 表示的是一条边。


你说的“最后返回的还是节点”是什么意思?你看到的或者实验的返回值是什么类型什么值?


0
1
慕移动9586716
仔细想想,想通了;这个问题是我没表达清楚!谢谢老师
2021-05-05
共1条回复

算法与数据结构(C++版) 面试/评级的算法复习技能包

课程专为:短时间内应对面试、升职测评等艰巨任务打造

11186 学习 · 1614 问题

查看课程