计算机科学导论课后总结1
老师上课给我们演示了一个迷宫的程序,然后我上网查找了一下,大致学习了一下这个程序的思想。
迷宫
这个题目和数据结构—图有关
迷宫的随机生成和路径搜索主要和图的遍历有关,一般来说图的遍历主要有两种方式:1、深度优先遍历(DFS)2、广度优先遍历(BFS)
两种遍历方式都很好理解,就说说深度优先遍历:
深度优先遍历,顾名思义,就是尽可能往深处遍历,访问到一个节点时,搜索这个节点没有被访问过的相邻节点,选择一个继续做同样的操作,直到没有邻节点为止再回溯到上一个访问的节点,并选择另外的邻节点。
可以这样描述深度遍历:
(1)访问顶点v;
(2)从v的未被访问的邻接点中选取一个顶点w,重复第一步,如果v没有未访问的邻接点,回溯至上一顶点;
(3)重复上述两步,直至图中所有和v有路径相通的顶点都被访问到。
至于迷宫的路径搜索,那就完全是图的深度遍历了,大概过程如下。
(1)从迷宫起点节点V开始访问
(2)访问这个节点V,标记为可行的路径;
(3)从v的未被访问的非"墙"邻接点中选取一个顶点w,重复第二步。如果v没有未访问的非"墙"邻接点,把这个节点的可行路径标记移除,回溯至上一节点;
(4)重复上述第(2)、(3)步,直至遍历到迷宫的出口节点。
关于图灵机
图灵机,又称图灵计算、图灵计算机,是由数学家阿兰·麦席森·图灵(1912~1954)提出的一种抽象计算模型,即将人们使用纸笔进行数学运算的过程进行抽象,由一个虚拟的机器替代人们进行数学运算。
所谓的图灵机就是指一个抽象的机器,它有一条无限长的纸带,纸带分成了一个一个的小方格,每个方格有不同的颜色。有一个机器头在纸带上移来移去。机器头有一组内部状态,还有一些固定的程序。在每个时刻,机器头都要从当前纸带上读入一个方格信息,然后结合自己的内部状态查找程序表,根据程序输出信息到纸带方格上,并转换自己的内部状态,然后进行移动。
关于信息的熵
熵的来源
熵首先是物理学里的名词。熵的概念源自热物理学。香农在 1948 年发表的论文“通信的数学理论”中指出,任何信息都存在冗余,冗余大小与信息中每个符号(数字、字母或单词)的出现概率或者说不确定性有关。香农借鉴了热力学的概念,把信息中排除了冗余后的平均信息量称为“信息熵”,并给出了计算信息熵的数学表达式。
信息熵的定义
通常,一个信源发送出什么符号是不确定的,衡量它可以根据其出现的概率来度量。概率大,出现机会多,不确定性小;反之就大。
不确定性函数f是概率P的单调递降函数;两个独立符号所产生的不确定性应等于各自不确定性之和,即f(P1,P2)=f(P1)+f(P2),这称为可加性。同时满足这两个条件的函数f是对数函数,即
直观解释
信息熵用来衡量信息量的大小
若不确定性越大,则信息量越大,熵越大
若不确定性越小,则信息量越小,熵越小
比如A班对B班,胜率一个为x,另一个为1-x
则信息熵为 -(xlogx + (1-x)log(1-x))
求导后容易证明x=1/2时取得最大,最大值为2
也就是说两者势均力敌时,不确定性最大,熵最大。
参考链接
https://blog.csdn.net/a003655/article/details/89429394
https://www.jianshu.com/p/3817b9d5ff76