设有一无向图G,采用邻接矩阵存储,现要求设计一个函数,用于求图中度数最大的顶点,并输出其对应的存储下标。(注:度数最大的顶点可能有多个)
输入格式:
有多组测试数据,每组数据的第一行表示图的顶点数n和图的边数e(0<n<20),第二行表示各顶点的值,按输入顺序进行存储,后面有e行,每一行表示每条边所依附的顶点的存储下标,两个下标之间用空格隔开。
输出格式:
每组输出占一行,输出度数最大的顶点对应的存储下标,各下标之间用空格隔开。
输入样例:
在这里给出一组输入。例如:
4 4
ABCD
0 1
0 3
1 2
1 3
结尾无空行
输出样例:
在这里给出相应的输出。例如:
1
结尾无空行
同学三连呀🤭
欢迎交流
代码:
#include<iostream>
using namespace std;
int main(){
int m,n,p,q;
while(~scanf("%d %d",&m,&n)){
int i,j,l=0,k=-10000;
char a[100];
int b[100]={0};
int c[100]={0};
for(i=0;i<m;i++){
cin>>a[i];
}
for(j=0;j<n;j++){
cin>>p>>q;
b[p]++;
b[q]++;
}
for(i=0;i<m;i++){
if(k<b[i]){
k=b[i];
}
}
for(j=0;j<m;j++){
if(k==b[j]){
c[l]=j;
l++;
}
}
printf("%d",c[0]);
for(i=1;i<l;i++){
printf(" %d",c[i]);
}
printf("\n");
}
return 0;
}