数学表达式魔训_day4

1. 图与网络

原文链接:数学表达式: 从恐惧到单挑 (11. 图与网络)

  1. 写出该无向图的邻接矩阵.
    在这里插入图片描述
    E = [ 0 1 1 1 1 0 1 0 1 1 0 1 1 0 1 0 ] \mathbf{E} = \begin{bmatrix}0&1&1&1 \\ 1&0&1&0\\ 1&1&0&1\\ 1&0&1&0\end{bmatrix} E=0111101011011010

  2. 定义无向网络
    Definition. A undirected net is a tuple G = ( V , w ) G = (\mathbf V, w) G=(V,w), where V \mathbf V V is the set of nodes, and w : V × V → R w: \mathbf{V} \times \mathbf{V} \to \mathbb{R} w:V×VR is the weight function where w ( v i , v j ) w(v_i, v_j) w(vi,vj) is the weight of the edge ( v i , v j ) (v_i, v_j) (vi,vj), ∀ v i , v j ∈ V \forall v_i, v_j\in\mathbf{V} vi,vjV, w(v_i, v_j) = w(v_j, v_i)$.

2. 树

原文链接:数学表达式: 从恐惧到单挑 (12. 树)

  1. 自己画一棵树, 将其元组各部分写出来 (特别是函数 p p p).

在这里插入图片描述
元组各部分:

  • V = { v 0 , v 1 , v 2 , v 3 , v 4 , v 5 , v 6 } \mathbf{V} = \{v_0, v_1, v_2, v_3, v_4, v_5, v_6\} V={v0,v1,v2,v3,v4,v5,v6}
  • r = v 0 r = v_0 r=v0
  • p ( v 0 ) = ϕ p(v_0)=\phi p(v0)=ϕ, p ( v 1 ) = p ( v 2 ) = p ( v 3 ) = v 0 p(v_1)=p(v_2)=p(v_3)=v_0 p(v1)=p(v2)=p(v3)=v0, p ( v 4 ) = v 1 p(v_4)=v_1 p(v4)=v1, p ( v 5 ) = p ( v 6 ) = v 3 p(v_5)=p(v_6)=v_3 p(v5)=p(v6)=v3
  1. 针对该树, 将代码中的变量值写出来 (特别是 parent 数组).
public class Tree {

	int n; //节点数,即 v_0-v_{n-1}
	int root; //根节点
	int[] parent; //父节点

	/**
	 * 构造一棵树, 第一个节点为根节点, 其余节点均为其直接子节点, 也均为叶节点.
	 */
	public Tree(int paraN) {
		n = paraN;
		parent = new int[n];
		parent[0] = -1; // -1 即 \phi
	}
}
n = 7;
root = 0;
parent[0] = -1;
parent[1] = 0;
parent[2] = 0;
parent[3] = 0;
parent[4] = 1;
parent[5] = 3;
parent[6] = 3;

3. m 叉树

原文链接:数学表达式: 从恐惧到单挑 (13. m 叉树)

  1. 画一棵三叉树, 并写出它的 child 数组.

在这里插入图片描述

child[7][3]:
[ 1 2 3 4 − 1 − 1 − 1 − 1 − 1 5 6 − 1 − 1 − 1 − 1 − 1 − 1 − 1 − 1 − 1 − 1 ] \begin{bmatrix}1&2&3 \\ 4&-1&-1\\ -1&-1&-1\\ 5&6&-1\\ -1&-1&-1\\ -1&-1&-1\\ -1&-1&-1\end{bmatrix} 141511121161113111111

  1. 按照 本贴 风格, 重新定义树. 提示: 还是应该定义 parent 函数, 字母表里面只有一个元素.
    Let ϕ \phi ϕ be the empty node, a tree is a 4-tuple T T T = ( Σ , V , r , p ) (\Sigma,\mathbf V,r, p) (Σ,V,r,p), where
    a) Σ \Sigma Σ is the alphabet, Σ = { a } \Sigma=\{a\} Σ={a};
    b) r ∈ V r \in \mathbf V rV is the root;
    c) p : V × Σ ∗ → V ∪ { ϕ } p:\mathbf V×\Sigma^*\rightarrow\mathbf V \cup \{\phi\} p:V×ΣV{ϕ} is the transition function, satisfying ∀ v ∈ V \forall v\in\mathbf V vV, ∃ ! \exists! ! s ∈ Σ ∗ s\in\Sigma^* sΣ s.t. p ( v , s ) = r p(v,s)=r p(v,s)=r.

  2. 根据图、树、 m m m-叉树的学习, 谈谈你对元组的理解.
    在学习了使用元组来对图、树以及 m m m 叉树进行定义后,对元组的理解不再仅仅是数据库中的一条记录,python 语言中的一系列变量组成的不可变序列容器。构成元组的元素,可以是元素,可以是集合,还可以是函数。比如,在定义图的时候,它就是常见的二元组,其中 ( V , E ) (\mathbf{V}, \mathbf{E}) (V,E) 中的 V \mathbf{V} V E \mathbf{E} E 分别为顶点和边的集合;在定义树的时候,其根节点以元素作为元组的组成部分,且引入了函数来描述节点间的关系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值