资源简介
为了解决离散数学的最短路径问题,使用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个文件信息
- 上一篇:企业网络拓扑设计
- 下一篇:智慧校园综合解决方案
相关资源
- 离散数学复习资料
- 离散数学方世昌电子版
- 离散数学及其应用Fourth Edition.Susanna
- 哈工大王义和离散数学答案压缩包
- 离散数学第三版课后答案
- 02324 离散数学
- zw_DiscreteMathematicsandItsApplications7thKen
- 王义和老师离散数学课后答案
- 离散数学及其应用第七版
- 离散数学高等教育出版社屈婉玲,耿
- 离散数学期末复习必备考前手写笔记
- 离散数学教材国防科大版
- 离散数学第五版课后习题答案耿素云
- 离散数学及其应用第7版答案
- 离散数学导论 徐洁磐 第四版 学习指
- 王义和:离散数学引论
- 离散数学-左孝凌等 上海科学技术文献
- 离散数学(第一版) 邵学才 叶秀明
- 中南大学离散数学PPT
- 离散数学导论 徐洁磬 学习指导与习题
- 哈工大复试离散数学参考书
- 离散数学耿素云屈婉玲编著.pdf
- 历届长沙学院离散数学考试试卷
- 西安电子科技大学计算机学院离散数
- 离散数学-杜忠复
- 离散数学答案 机械工业出版社
- 离散数学(第二版)最全课后习题答
- 苏州大学离散数学题库
- 离散数学理论分析题解
- 离散数学答案左孝凌
评论
共有 条评论