资源简介

关于路径的几个问题,两点间的k优路径、必经节点最优路径等的几篇论文

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 

#define MAXQSIZE 6000           /* 队列的大小 */

struct node{
    int node_l;                 /* 具有相同起点的上一个节点,0意味无 */ /** 具有相同起点的上一个节点,0意味无 */
    int node_r;                 /* 具有相同起点的下一个节点,0意味无 */ /** 具有相同起点的下一个节点,0意味无 */
    int node_u;                 /* 具有相同终点的上一个节点,0意味无 */ /** 具有相同终点的上一个节点,0意味无 */
    int node_d;                 /* 具有相同终点的下一个节点,0意味无 */ /** 具有相同终点的下一个节点,0意味无 */
}m[6000][6000];                 /* m数组模拟邻接多重链表,利用第一行和第一列作为表头 */ /** m数组模拟邻接多重链表,利用第一行和第一列作为表头 */

int q[6000];                    /* q数组模拟循环队列 */ /** q数组模拟循环队列 */
int front;                      /* 队列的头 */ /** 队列的头 */
int tail;                       /* 队列的尾 */ /** 队列的尾 */

int d[6000];                    /* dijkstra算法中记录节点到源点的距离 */ /** dijkstra算法中记录节点到源点的距离 */
int pioneer[6000];              /* dijkstra算法中记录节点最短路径上的前驱节点 */ /** dijkstra算法中记录节点最短路径上的前驱节点 */

int path_v[6000];               /* 输出路径上的节点 */ /** 输出路径上的节点 */
int path_vNum;                  /* 记录输出路径中的节点数目 */ /** 记录输出路径中的节点数目 */
int largest;                    /* 节点中最大编号 */ /** 节点中最大编号 */
char iFileName[256];            /* 输入文件名 */ /** 输入文件名 */
char oFileName[256];            /* 输出文件名 */ /** 输出文件名 */
FILE *inputFile;                /* 用于输入的文件句柄 */ /** 用于输入的文件句柄 */
FILE *outputFile;               /* 用于输出的文件句柄 */ /** 用于输出的文件句柄 */
int source=20dest=32;          /* 源节点和目的节点 */ /** 源节点和目的节点 */

/******************************************
**如下是二次添加的变量
********************************************/
int designatedP[6000];          /* 记录必经的节点*/ /** 记录必经的节点*/
int designatedN;                /* 必经节点的个数*/ /** 必经节点的个数*/
int M = 80;                     /* 种群的大小 */ /** 种群的大小 */
int G = 1000;                   /* 最大的迭代次数 */ /** 最大的迭代次数 */
int geneG[80][6000];            /* 每代基因的放置点 */ /** 每代基因的放置点 */
int geneLenReal[80];            /* 每代基因对应的长度 */ /** 每代基因对应的长度 */
int sel_v[6000];                /* 用于遗传算法的初始化方法3中 */ /** 用于遗传算法的初始化方法3中 */
int new_gene[80][6000];         /* 交叉新产生的基因*/ /** 交叉新产生的基因*/
int new_gene_len[80];           /* 交叉新产生基因的长度 */ /** 交叉新产生基因的长度 */
int next_gene[320][6000];       /* 240个变异产生的基因+80个父基因*/ /** 240个变异产生的基因+80个父基因*/
int next_gene_len[320];         /* 320个基因的对度的长度  */ /** 320个基因的对度的长度  */
int score[320];                 /* 320个基因对应的权值和 */ /** 320个基因对应的权值和 */
int arc[320];                   /* 320个基因对应的有效连接边数 */ /** 320个基因对应的有效连接边数 */
int geneG_arc[80];              /* 80个父基因对应的有效连接边数 */ /** 80个父基因对应的有效连接边数 */
int Wmax = 10000;               /* 无连接弧对应的权值*/ /** 无连接弧对应的权值*/
float off_in_all[9]={0.600.650.700.750.800.850.900.951.0};
int off_idx;                    /* 用于调整无效边数所占比例 */ /** 用于调整无效边数所占比例 */

/** \brief 循环队列的初始化
*/
void InitQueue()
{
    front = tail = 0;
}
/** \brief 返回队列的长度
*/
int QueueLength()
{
    return (tail-front+MAXQSIZE)%MAXQSIZE;
}

/** \brief 向队列中压入节点
* \param vertex:压入队列中的节点
*/
void EnQueue(int vertex)
{
    if

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       42207  2013-08-03 15:31  源程序\main.c
     目录           0  2013-08-28 16:41  源程序\
     文件      172225  2013-08-03 15:46  文档\文档.pdf
     目录           0  2013-08-28 16:41  文档\
     文件       19456  2013-08-03 20:11  可执行程序\CPATH.exe
     目录           0  2013-08-28 16:41  可执行程序\
     文件      103638  2013-08-03 17:51  源程序\main.chm
     目录           0  2013-08-11 11:18  ZTE\
     文件      449156  2013-07-31 12:35  ZTE\00921046.pdf
     文件      311700  2013-07-18 13:21  ZTE\K优路径的一种求解算法与实现.pdf
     文件      288836  2013-07-18 16:23  ZTE\一个求解k短路径实用算法.pdf
     文件      558084  2013-07-18 16:08  ZTE\一种基于双向搜索的K则最优路径算法.pdf
     文件      219945  2013-07-29 15:48  ZTE\分段路径寻优算法研究及实现.pdf
     文件      414831  2013-07-18 14:41  ZTE\基于蚁群算法的k条路径生成研究.pdf
     文件      546863  2013-07-31 23:04  ZTE\基于遗传算法的军事运输路径优化.pdf
     文件      457981  2013-07-31 23:05  ZTE\必经点最短路径问题模型及相应遗传算法研究.pdf
     文件       64914  2013-08-10 20:42  ZTE\找路测试数据.txt
     文件      341996  2013-07-18 17:16  ZTE\求解k条最优路径问题的遗传算法.pdf
     文件      249589  2013-07-31 12:30  ZTE\用遗传算法求解网络最短路效率.pdf

评论

共有 条评论