📄 miles_span.ch
字号:
@x l.99main(argc,argv) int argc; /* the number of command-line arguments */ char *argv[]; /* an array of strings containing those arguments */@yint main(@t\1\1@> int argc, /* the number of command-line arguments */ char *argv[]@t\2\2@>) /* an array of strings containing those arguments */@z@x l.197report(u,v,l) Vertex *u,*v; /* adjacent vertices in the minimum spanning tree */ long l; /* the length of the edge between them */@yvoid report(@t\1\1@> Vertex *u,Vertex *v, /* adjacent vertices in the minimum spanning tree */ long l@t\2\2@>) /* the length of the edge between them */@z@x l.378unsigned long krusk(g) Graph *g;@yunsigned long krusk(Graph *g)@z@x l.498void @[@] (*init_queue)(); /* create an empty priority queue */void @[@] (*enqueue)(); /* insert a new element in the priority queue */void @[@] (*requeue)(); /* decrease the key of an element in the queue */Vertex *(*del_min)(); /* remove an element with smallest key */@yvoid @[@] (*init_queue)(long); /* create an empty priority queue */void @[@] (*enqueue)(Vertex *,long); /* insert a new element in the priority queue */void @[@] (*requeue)(Vertex *,long); /* decrease the key of an element in the queue */Vertex *(*del_min)(void); /* remove an element with smallest key */@z@x l.513unsigned long jar_pr(g) Graph *g;@yunsigned long jar_pr(Graph *g)@z@x l.610void init_heap(d) /* makes the heap empty */ long d;@yvoid init_heap(long d) /* makes the heap empty */@z@x l.624void enq_heap(v,d) Vertex *v; /* vertex that is entering the queue */ long d; /* its key (aka |dist|) */@yvoid enq_heap(@t\1\1@> Vertex *v, /* vertex that is entering the queue */ long d@t\2\2@>) /* its key (aka |dist|) */@z@x l.651void req_heap(v,d) Vertex *v; /* vertex whose key is being reduced */ long d; /* its new |dist| */@yvoid req_heap(@t\1\1@> Vertex *v, /* vertex whose key is being reduced */ long d@t\2\2@>) /* its new |dist| */@z@x l.682Vertex *del_heap()@yVertex *del_heap(void)@z@x l.797void init_F_heap(d) long d;@yvoid init_F_heap(long d)@z@x l.860void enq_F_heap(v,d) Vertex *v; /* vertex that is entering the queue */ long d; /* its key (aka |dist|) */@yvoid enq_F_heap(@t\1\1@> Vertex *v, /* vertex that is entering the queue */ long d@t\2\2@>) /* its key (aka |dist|) */@z@x l.901void req_F_heap(v,d) Vertex *v; /* vertex whose key is being reduced */ long d; /* its new |dist| */@yvoid req_F_heap(@t\1\1@> Vertex *v, /* vertex whose key is being reduced */ long d@t\2\2@>) /* its new |dist| */@z@x l.970Vertex *del_F_heap()@yVertex *del_F_heap(void)@z@x l.1155qunite(m,q,mm,qq,h) register long m,mm; /* number of nodes in the forests */ register Arc *q,*qq; /* binomial trees in the forests, linked by |qsib| */ Arc *h; /* |h->qsib| will get the result */@yvoid qunite(@t\1\1@> register long m, /* number of nodes in the forests */ register Arc *q, /* binomial trees in the forests, linked by |qsib| */ register long mm, /* number of nodes in the forests */ register Arc *qq, /* binomial trees in the forests, linked by |qsib| */ Arc *h@t\2\2@>) /* |h->qsib| will get the result */@z@x l.1257qenque(h,a) Arc *h; /* header of a binomial queue */ Arc *a; /* new element for that queue */@yvoid qenque(@t\1\1@> Arc *h, /* header of a binomial queue */ Arc *a@t\2\2@>) /* new element for that queue */@z@x l.1272qmerge(h,hh) Arc *h; /* header of binomial queue that will receive the result */ Arc *hh; /* header of binomial queue that will be absorbed */@yvoid qmerge(@t\1\1@> Arc *h, /* header of binomial queue that will receive the result */ Arc *hh@t\2\2@>) /* header of binomial queue that will be absorbed */@z@x l.1291Arc *qdel_min(h) Arc *h; /* header of binomial queue */@yArc *qdel_min(Arc *h) /* header of binomial queue */@z@x l.1339qtraverse(h,visit) Arc *h; /* head of binomial queue to be unraveled */ void @[@] (*visit)(); /* procedure to be invoked on each node */@yvoid qtraverse(@t\1\1@> Arc *h, /* head of binomial queue to be unraveled */ void (*visit)(register Arc *)@t\2\2@>) /* procedure to be invoked on each node */@z@x l.1392unsigned long cher_tar_kar(g) Graph *g;@yunsigned long cher_tar_kar(Graph *g)@z@x l.1614void note_edge(a) Arc *a;@yvoid note_edge(Arc *a)@z
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -