数据结构与算法
算法的缪斯
局外人不懂局
深度的思考就如高质量的睡眠,缺一不可。
展开
-
指针作为函数参数之辨析
而指针的引用(or 指针的指针)可以作为函数形参来改变指针自身,因为对于指针而言,它是被引用传递到函数的。指针的引用(p3):即指针的别名,修改它,也就是修改原指针(本质上它是指针的指针);指针所指向的值(a):指针变量所存储的地址,一般指向某个特定类型(int)的值;指针作为形参,其实是值传递,不能改变指针自身(实参),但可以改变指针所指向的值;指针的指针(p2):指针自身也存储在内存中的某个地址,所以指针也可以指向指针;指针(p1):指针是存储地址的一种变量,也称指针变量;原创 2023-07-13 13:59:45 · 75 阅读 · 1 评论 -
求解强连通分量算法简析(Kosaraju算法)
3. 对G'进行深度优先搜索,但是这次的搜索顺序是按照步骤1中顶点的结束时间的逆序进行的。核心思想:该算法利用原图的DFS顺序来确定反图的DFS顺序,从而确定强连通分量。1. 对原图G进行深度优先搜索(DFS),并在搜索过程中记录每个顶点的结束时间。4. 在步骤3中,每次DFS所能到达的所有顶点就构成了一个强连通分量。的顺序越大(说明在上流,or访问不到,就这两种可能), 则在反图中。应越早被访问,且在反图中能访问到的节点便是强连通(该节点在原图中。图中访问不到的会先在反图中遍历)。原创 2023-07-10 13:06:46 · 203 阅读 · 1 评论