点击提交后没反应
请问为什么点击提交后,页面没有反应,正常来说是要有反应的,代码都和同学的一样,有什么办法吗
建议你直接复制错误信息百度
【相关推荐】
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
using namespace std;
#define MaxSize 100 // 顶点数目的最大值
typedef char VertexType; // 顶点的数据类型
typedef int EdgeType; // 整数表示权值
typedef struct{
int a; // 较小值的顶点
int b; // 边的两个顶点
int weight; // 边的权值
}Edge; // 边结构体
typedef struct{
VertexType Vex[MaxSize]; // 顶点表
EdgeType Edge[MaxSize][MaxSize]; // 邻接矩阵
int vexnum, arcnum; // 图的当前节点数和弧数
}MGraph;
Edge edges[MaxSize];
void CreateGraph(MGraph *g){
int start;
int end;
int weight;
cout << "请输入图的边数和顶点数(空格分隔):";
cin >> g->vexnum >> g->arcnum;
// 初始化顶点
for (int i = 0; i < g->vexnum; ++i){
cout << "请输入节点" << i << "的值(字符):";
cin >> g->Vex[i];
}
//初始化邻接矩阵
for (int i = 0; i < g->vexnum; ++i){
for (int j = 0; j < g->vexnum; ++j){
g->Edge[i][j] = 65536; // 不可达
}
}
for (int i = 0; i < g->arcnum / 2; ++i){
printf("请输入第%d段弧(i j)和权值:", i);
cin >> end >> start >> weight;
g->Edge[end][start] = weight;
g->Edge[start][end] = weight;
Edge temp;
if (start > end){
temp.a = end;
temp.b = start;
}
else{
temp.a = start;
temp.b = end;
}
temp.weight = weight;
edges[i] = temp;
}
}
// 并查集
int Find(int *parent, int x){ // 寻找根节点
while (parent[x] >= 0)
x = parent[x];
return x;
}
// 冒泡排序
void sort(Edge e[],int len){
for (int i = 0; i < len; ++i){
for (int j = 0; j < len - 1 - i; ++j){
if (e[j].weight > e[j + 1].weight){
Edge temp = e[j];
e[j] = e[j + 1];
e[j + 1] = temp;
}
}
}
}
int parent[MaxSize]; // Edge edges[MaxSize]; // 边数组父亲顶点数组(并查集)
void MiniSpanTree_Kruskal(MGraph g){
int n, m;
sort(edges, g.arcnum);
for (int i = 0; i < g.vexnum; ++i) parent[i] = -1; // 初始化:各个顶点单独形成一个集合
for (int i = 0; i < g.arcnum; ++i){ // 扫描每一条边
n = Find(parent, edges[i].a);
m = Find(parent, edges[i].b); // a-------->b
if (n != m){
parent[n] = m; // 并操作,将n并入m中
// 作为生成树的一条边打印出来
cout << edges[i].a << "->" << edges[i].b<<" ";
}
}
}
void main(){
MGraph *g = new MGraph;
CreateGraph(g);
MiniSpanTree_Kruskal(*g);
system("pause");
return;
}