⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sy7_2.c

📁 数据结构实验与学习指导
💻 C
字号:
#include "cg.h"     /*包含图的存储实现的头文件*/
void f_ind(ALGraph *G)
{
   int i;
   int ind[VERTEX_MAX]={0},outd[VERTEX_MAX]={0},totald[VERTEX_MAX]={0}; 
   /*3个变量分别为入度、出度和总度数*/
   EdgeNode *p;   
   for (i=0;i<G->n;i++)        /*求出度*/
    {
      p=G->adjlist[i].firstedge;
      while (p!=NULL)
        {
          outd[i]++;
          p=p->next;
        }
     }
    for (i=0;i<G->n;i++)         /*求入度,依次扫描每个链表*/
    {
      p=G->adjlist[i].firstedge;
      while (p!=NULL)
       {
        ind[p->adjvex]++;
        p=p->next;
       }
    }
    for (i=0;i<G->n;i++)
    {
      totald[i]=ind[i]+outd[i];
     }
   printf("顶点  入度  出度  度:\n");
   for(i=0;i<G->n;i++)
    {
printf("%s   %d   %d   %d\n",G->adjlist[i].vertex,ind[i],outd[i],totald[i]);
    }
}
main()
{
  int i,j;
  ALGraph *g;
  EdgeNode *p;
  g=(ALGraph *)malloc(sizeof(ALGraph));
  CreateALGraph2(g);
  printALG(g);
  f_ind(g);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -