⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gb_dijk.ch

📁 模拟器提供了一个简单易用的平台
💻 CH
字号:
@x l.68extern long dijkstra(); /* procedure to calculate shortest paths */#define print_dijkstra_result p_dijkstra_result /* shorthand for linker */extern void print_dijkstra_result(); /* procedure to display the answer */@yextern long dijkstra(Vertex *,Vertex *,Graph *,long (*)(Vertex *));   /* procedure to calculate shortest paths */#define print_dijkstra_result p_dijkstra_result /* shorthand for linker */extern void print_dijkstra_result(Vertex *);   /* procedure to display the answer */@z@x l.143extern void @[@] (*init_queue)(); /* create an empty priority queue for |dijkstra| */extern void @[@] (*enqueue)(); /* insert a new element in the priority queue */extern void @[@] (*requeue)(); /* decrease the key of an element in the queue */extern Vertex *(*del_min)(); /* remove an element with smallest key */@yextern void @[@] (*init_queue)(long);   /* create an empty priority queue for |dijkstra| */extern void @[@] (*enqueue)(Vertex *,long);   /* insert a new element in the priority queue */extern void @[@] (*requeue)(Vertex *,long);   /* decrease the key of an element in the queue */extern Vertex *(*del_min)(void);   /* remove an element with smallest key */@z@x l.162static long dummy(v)  Vertex *v;@ystatic long dummy(Vertex *v)@z@x l.169long dijkstra(uu,vv,gg,hh)  Vertex *uu; /* the starting point */  Vertex *vv; /* the ending point */  Graph *gg; /* the graph they belong to */  long @[@] (*hh)(); /* heuristic function */@ylong dijkstra(@t\1\1@>  Vertex *uu, /* the starting point */  Vertex *vv, /* the ending point */  Graph *gg, /* the graph they belong to */  long (*hh)(Vertex *)@t\2\2@>) /* heuristic function */@z@x l.257void print_dijkstra_result(vv)  Vertex *vv; /* ending vertex */@yvoid print_dijkstra_result(Vertex *vv) /* ending vertex */@z@x l.295void @[@] (*init_queue)() = init_dlist; /* create an empty dlist */void @[@] (*enqueue)() = enlist; /* insert a new element in dlist */void @[@] (*requeue)() = reenlist ;  /* decrease the key of an element in dlist */Vertex *(*del_min)() = del_first; /* remove element with smallest key */@yvoid @[@] (*init_queue)(long) = init_dlist; /* create an empty dlist */void @[@] (*enqueue)(Vertex *,long) = enlist; /* insert a new element in dlist */void @[@] (*requeue)(Vertex *,long) = reenlist ;  /* decrease the key of an element in dlist */Vertex *(*del_min)(void) = del_first; /* remove element with smallest key */@z@x l.311void init_dlist(d)  long d;@yvoid init_dlist(long d)@z@x l.328void enlist(v,d)  Vertex *v;  long d;@yvoid enlist(Vertex *v,long d)@z@x l.340void reenlist(v,d)  Vertex *v;  long d;@yvoid reenlist(Vertex *v,long d)@z@x l.353Vertex *del_first()@yVertex *del_first(void)@z@x l.374void init_128(d)  long d;@yvoid init_128(long d)@z@x l.386Vertex *del_128()@yVertex *del_128(void)@z@x l.402void enq_128(v,d)  Vertex *v; /* new vertex for the queue */  long d; /* its |dist| */@yvoid enq_128(@t\1\1@>  Vertex *v, /* new vertex for the queue */  long d@t\2\2@>) /* its |dist| */@z@x l.425void req_128(v,d)  Vertex *v; /* vertex to be moved to another list */  long d; /* its new |dist| */@yvoid req_128(@t\1\1@>  Vertex *v, /* vertex to be moved to another list */  long d@t\2\2@>) /* its new |dist| */@z@x l.442extern void init_dlist();extern void enlist();extern void reenlist();extern Vertex *del_first();extern void init_128();extern Vertex *del_128();extern void enq_128();extern void req_128();@yextern void init_dlist(long);extern void enlist(Vertex *,long);extern void reenlist(Vertex *,long);extern Vertex *del_first(void);extern void init_128(long);extern Vertex *del_128(void);extern void enq_128(Vertex *,long);extern void req_128(Vertex *,long);@z

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -