资源简介
为了解决离散数学的最短路径问题,使用DJ斯特拉算法解决此问题。

代码片段和文件信息
#include “stdafx.h“
#include
#include
#include
#include
#include “Waterpass.h“
using namespace std;
int vill[16][2];
double dis[17][17];
double first[17];
int cun[17][2];
int use[17] = { 0 };
int sum;
void readfile() {
FILE*fp = NULL;
fp = fopen(“data.txt“ “r“);
if (NULL == fp) return;
int i = 0 c;
fscanf_s(fp “%d“ &c);
while (fscanf_s(fp “%d %d “ &vill[i][0] &vill[i][1]) != EOF) i++;
fclose(fp);
fp = NULL;
vill[16][1] = 0;
vill[17][0] = 0;
}
void dist() {
for (int i = 0; i < 17; i++) {
for (int j = 0; j < 17; j++) {
if (i == 16 || j == 16) {
dis[i][j] = abs(vill[i][1] - vill[j][1]);
}
else {
dis[i][j] = sqrt((vill[i][0] - vill[j][0])*(vill[i][0] - vill[j][0]) + (vill[i][1] - vill[j][1])*(vill[i][1] - vill[j][1]));
}
}
}
}
void dist1() {
for (int i = 0; i < 18; i++) {
for (int j = 0; j < 18; j++) {
if (i == 16 || j == 16) {
int x = abs(vill[i][1] - vill[j][1]);
int y = abs(vill[i][0] - vill[j][0]);
if (x < y)
dis[i][j] = x;
else
dis[i][j] = y;
}
else {
dis[i][j] = sqrt((vill[i][0] - vill[j][0])*(vill[i][0] - vill[j][0]) + (vill[i][1] - vill[j][1])*(vill[i][1] - vill[j][1]));
}
}
}
}
void dist2() {
for (int i = 0; i < 18; i++) {
for (int j = 0; j < 18; j++) {
if (i == 16 || j == 16) {
int x = abs(vill[i][1] - vill[j][1]);
int y = abs(vill[i][0] - vill[j][0]);
if (x < y)
dis[i][j] = x;
else
dis[i][j] = y;
}
else {
dis[i][j] = sqrt((vill[i][0] - vill[j][0])*(vill[i][0] - vill[j][0]) + (vill[i][1] - vill[j][1])*(vill[i][1] - vill[j][1]));
}
}
}
for (int i = 0; i < 17; i++) {
if (dis[11][i] > dis[10][i]) {
dis[11][i] = dis[10][i];
}
dis[10][i] = unable;
dis[i][10] = unable;
}
dis[10][11] = 0;
dis[11][10] = 0;
}
void result1b() {
FILE*fp = NULL;
fp = fopen(“result1b.txt“ “w+“);
if (NULL == fp) return;
for (int i = 1; i<17; i++)
fprintf_s(fp “%d %d\n“ cun[i][0] cun[i][1]);
}
void result1c() {
for (int i = 0; i < 17; i++) {
if (cun[i][0] == 16) {
if (vill[cun[i][1]][0] < vill[cun[i][1]][1])
cun[i][0] = 17;
}
if (cun[i][1] == 16) {
if (vill[cun[i][0]][0] < vill[cun[i][0]][1])
cun[i][1] = 17;
}
}
FILE*fp = NULL;
fp = fopen(“result1c.txt“ “w+“);
if (NULL == fp) return;
for (int i = 1; i<17; i++)
fprintf(fp “%d %d\n“ cun[i][0] cun[i][1]);
}
void result1d() {
double x y;
for (int i = 0; i < 17; i++) {
if (cun[i][0] == 16) {
if (vill[cun[i][1]][0] < vill[cun[i][1]][1])
cun[i][0] = 17;
}
if (cun[i][1] == 16) {
if (vill[cun[i][0]][0] < vill[cun[i][0]][1])
cun[i][1] = 17;
}
if (cun[i][0] == 11) {
x = sqrt((vill[cun[i][1]][0] - vill[10][0])*(vill[cun[i][1]][0] - vill[10][0]) + (vill[cun[i][1]][1] - vill[10][1])*(vill[cun[i][1]][1] - vill[10][1]));
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 29696 2018-04-27 22:08 Waterpass\.vs\Waterpass\v15\.suo
文件 36458496 2018-04-27 22:08 Waterpass\.vs\Waterpass\v15\Browse.VC.db
文件 3473408 2018-04-27 21:54 Waterpass\.vs\Waterpass\v15\ipch\f0e79d2685dc836f.ipch
文件 131072 2018-04-27 22:00 Waterpass\Debug\Waterpass.exe
文件 737172 2018-04-27 22:00 Waterpass\Debug\Waterpass.ilk
文件 946176 2018-04-27 22:00 Waterpass\Debug\Waterpass.pdb
文件 99 2014-11-21 21:27 Waterpass\Waterpass\data.txt
文件 83665 2018-04-27 22:00 Waterpass\Waterpass\Debug\main.obj
文件 5884 2018-04-27 12:48 Waterpass\Waterpass\Debug\stdafx.obj
文件 609280 2018-04-27 22:00 Waterpass\Waterpass\Debug\vc141.idb
文件 536576 2018-04-27 22:00 Waterpass\Waterpass\Debug\vc141.pdb
文件 101 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.log
文件 297704 2018-04-27 16:47 Waterpass\Waterpass\Debug\Waterpass.obj
文件 2883584 2018-04-27 12:48 Waterpass\Waterpass\Debug\Waterpass.pch
文件 2640 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\CL.command.1.tlog
文件 77436 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\CL.read.1.tlog
文件 2118 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\CL.write.1.tlog
文件 1508 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\li
文件 4026 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\li
文件 728 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\li
文件 217 2018-04-27 22:00 Waterpass\Waterpass\Debug\Waterpass.tlog\Waterpass.lastbuildstate
文件 5041 2018-04-27 22:00 Waterpass\Waterpass\main.cpp
文件 110 2018-04-27 22:01 Waterpass\Waterpass\result1b.txt
文件 112 2018-04-27 22:01 Waterpass\Waterpass\result1c.txt
文件 113 2018-04-27 22:01 Waterpass\Waterpass\result1d.txt
文件 134 2018-04-27 22:00 Waterpass\Waterpass\result2b.txt
文件 128 2018-04-27 22:00 Waterpass\Waterpass\result2d.txt
文件 134 2018-04-27 22:00 Waterpass\Waterpass\result2e.txt
文件 134 2018-04-27 22:00 Waterpass\Waterpass\result2f.txt
文件 320 2018-04-26 20:29 Waterpass\Waterpass\stdafx.cpp
............此处省略21个文件信息
- 上一篇:企业网络拓扑设计
- 下一篇:智慧校园综合解决方案
相关资源
- c 程序判断离散数学中命题公式
- 离散数学考研必备复试成功
- 山东大学离散数学题库
- 武汉大学 离散数学 试题 和 答案
- 离散数学实验报告4——图的应
- 离散数学教程左孝凌版
- 离散数学-左孝凌-扫描版-带完整书签
- Mathematics: A Discrete Introduction: Edward A
- 离散数学-屈婉玲 耿素云 张立昂 200
- 离散数学答案左孝凌版
- 广工离散数学课件
- 离散数学及其应用原书第7版奇数题课
- 离散数学课后习题与解答
- 离散数学及其应用第七版英文版,绝
- 离散数学左孝凌详细答案
- 离散数学答案,第四版本(左孝凌+刘
- 国防科大离散数学课件
- 离散数学第五版课后答案 耿素云 屈婉
- 华中科技大学计算机学院离散数学全
- 离散数学及其应用第七版答案奇数题
- 西电出版社《离散数学》答案
- 国外经典的离散数学教材
- 离散数学第四版223759
- 离散数学实验TSP旅行商问题的代码实
- 离散数学经典 课件 详细
- 王丽杰离散数学课件PPT
- 离散数学课件看了不挂科
- 离散数学第三版 方世昌 课后答案
- 离散数学第三版 方世昌课后习题答案
- 离散数学_第2版_屈婉玲_课后答案
评论
共有 条评论