zoukankan      html  css  js  c++  java
  • 第十二周

    这周除了上课时的课堂内容,其余几乎都在排练,毕竟快比赛了,每晚都要与同学们一起练,累也充实。

    这周对数据结构课程比较印象深刻,也加以练习

    如下  图的零接矩阵

    #include<stdio.h>
    #include<limits.h>
    #include<stdlib.h>

    #define INFINITY INT_MAX
    #define MAX_VEX_NUM 10
    typedef  enum{DG, AG, WDG, WAG}Graph;
    typedef int ValType;
    typedef struct {        
             ValType ArcVal;
        //InfoType ArcInfo;
    } AdjType;
    typedef char VexType;
    typedef  struct{
        Graph kind;
        int vexnum, arcnum;
        VexType vexs[MAX_VEX_NUM];
        AdjType adj[MAX_VEX_NUM][MAX_VEX_NUM];
    }AdjGraph;       

    int LocateVex(AdjGraph *G, VexType v)
    {
        int i;
        for(i=0; i<G->vexnum; i++)
        {
            if(G->vexs[i]==v)
                return i;
        }
        return -1;
    }


    void CreateDG(AdjGraph *G)/*G->kind=DG*/
    {
        int i, j, k;
        VexType v1, v2;

        printf("请输入图的顶点数目:");
        scanf("%d", &G->vexnum );

        printf("请输入弧的数目:");
        scanf("%d", &G->arcnum );

        printf("请输入顶点信息:");
        for(i=0; i<G->vexnum; i++)
        {    fflush(stdin);
            scanf("%c", &G->vexs[i]);
        }

        /*初始化邻接矩阵*/
        for(i=0; i<G->vexnum; i++)
            for(j=0; j<G->vexnum; j++)
                G->adj[i][j].ArcVal=INFINITY;
        

        printf("构建邻接矩阵,请输入一条弧的起点和终点,例如"a,b" ");
        for(k=0; k<G->arcnum; k++)
        {
        printf("第%d-%d条:", G->arcnum, k+1);
            fflush(stdin);
            scanf("%c,%c", &v1, &v2);
            i=LocateVex(G, v1);
            j=LocateVex(G, v2);
            G->adj[i][j].ArcVal=1;
        }
    }


    void main()
    {
        AdjGraph G;
        G.kind=DG;
        CreateDG(&G);

        int i, j;    
        printf("输出图的邻接矩阵: ");
        for(i=0; i<G.vexnum; i++)
        {    for(j=0; j<G.vexnum; j++)
                printf("%14d", G.adj[i][j].ArcVal);
            printf(" ");
        }
    }

  • 相关阅读:
    BZOJ1430小猴打架——prufer序列
    [集训队作业2018]蜀道难——TopTree+贪心+树链剖分+链分治+树形DP
    BZOJ5063旅游——非旋转treap
    bzoj 4570 妖怪
    Luogu 1452 Beauty Contest
    bzoj 1337 最小圆覆盖
    bzoj 1007 水平可见直线
    Luogu 4724 三维凸包
    bzoj 4827 礼物
    hdu 4348 To the moon
  • 原文地址:https://www.cnblogs.com/lsx1989/p/5499240.html
Copyright © 2011-2022 走看看