zoukankan      html  css  js  c++  java
  • DS博客作业06--图

    1.本周学习总结

    1.1.思维导图

    1.2.谈谈你对图结构的认识及学习体会。

    本章学习了图的相关知识,图和树的区别,表面上是:树的关系是一对多,图的关系是多对多,但是图用到递归的地方是少于树的,而图的结构体要比树复杂很多。图的存储结构有两种,邻接矩阵和邻接表,邻接矩阵的本质是二维数组,所以操作起来相对简单一些,结构体也比较简单,只有二维数组,顶点数和边数

    2.PTA实验作业

    要求挑3道题目写设计思路、调试过程。设计思路用伪代码描述。题目选做要求:

    2.1.六度空间

    2.1.1设计思路

    SixBFS:
    while qu不为空
    出队到v
    for i=0 to n
    if该边存在并且未曾遍历
    count++
    边的另一个顶点入队
    visited标记遍历过
    tail记录为i
    end if
    if lastv //当前结点的所有相邻可能已经全部判断完毕
    level++
    last=tail
    end if
    if level
    v
    break
    end if
    end while
    return count

    2.1.2代码截图



    2.1.3本题PTA提交列表说明


    本题的完成很大程度上是在范华同学的帮助下完成的,在他的帮助下,我在考试前把这道题敲了三遍,并理解了代码的含义,才得以考试中完成这道题。

    2.2. 公路村村通

    2.2.1设计思路

    Prim:
    初始化count=1,cost=0;//cost为寻找路径中选中的结点数,最后count应该等于n
    dist数组通过FindMin函数,是第i个结点到附近结点中最短的路径
    while(1)
    v通过FindMin函数,v是dist的顶点
    if v-1 //v不存在
    break;
    else
    cost+=dist[v];
    count++;
    end if
    dist[v]变零,表示被选中
    for i=1 to n
    如果顶点i有dist但v i之间的直接距离map比dist小
    更正最短路径
    end for
    end while
    if count
    n 所有结点选中 成功
    else 有回路 返回-1
    end if

    2.2.2代码截图



    2.2.3本题PTA提交列表说明

    2.3.图着色

    2.3.1设计思路

    CreateMGraph函数建好邻接矩阵
    flag1 用于判断颜色数是否符合要求
    flag2 用于判断涂色是否符合要求
    color数组存放每次涂色的颜色
    两个for循环统计颜色数//数组基操
    if(count!=k)如果颜色不符合
    flag1=0 直接输出No
    else
    for i=0 to n
    for j=0 to n
    遍历邻接矩阵 也就是遍历二维数组
    if edges[i][j]存在&& color[i]==color[j]//相邻顶点颜色重合
    flag2=0
    end if
    end for for
    根据flag2判断输出Yes或No

    2.3.2代码截图




    2.3.3本题PTA提交列表说明

    3、上机考试错题及处理办法

    3.1拓扑排序

    3.1.1

    只输出了一个error

    3.1.2



    考试前复习力度不够,对代码极不熟悉,所以考试是才出此下策,只输出一个error,白嫖5分

    3.2公路村村通

    3.2.1

    只输出一个-1,考前没有熟悉代码,白嫖10分

    3.2.3

    解决方案见上面PTA第二题。

  • 相关阅读:
    linux软件安装方式
    docker 安装 jenkins touch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’: Permission denied Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
    [ERR] Node goodsleep.vip:6379 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.
    Linux 常用命令 服务器间scp 用户 export 创建文件、软连接
    redis 安装 集群 主从 哨兵 docker
    WPF密码框中禁止复制、粘贴
    Application 统计在线人数
    【转义字符】HTML 字符实体< &gt: &等
    SQL语句统计每天的数据
    正则表达式计算代码数
  • 原文地址:https://www.cnblogs.com/qsls8643/p/10964402.html
Copyright © 2011-2022 走看看