Applied Stastic test notes
Applied Stastic test notes第二部分:概率论的基础 - 集合上的概率 基本定义 样本空间:一个随机试验所有可能结果的集合,记为 Ω。 事件:样本空间的一个子集,记为 A,代表我们关心的某种情况的发生。 实现:实际发生的一个结果,是样本空间中的一个元素 x。 概率空间 是研究概率的严格数学框架,为一个三元组 (Ω, F, P)。 Ω:样本空间。 F:事件域,是所有我们“可测量”的事件的集合。 P:概率测度,为每个事件分配一个概率值的函数。 概率公理 非负性:任何事件的概率都在0和1之间。0 ≤ P(A) ≤ 1 规范性:整个样本空间的概率为1。P(Ω) = 1 可列可加性:如果一系列事件两两互斥,那么它们至少一个发生的概率等于各自概率之和。P(A1 ∪ A2 ∪ ...) = P(A1) + P(A2) + ... 概率的基本性质 空集概率:P(∅) = 0 补集规则:P(Aᶜ) = 1 - P(A) 并集规则:P(A ∪ B) = P(A) + P(B) - P(A ∩ B) 单调性:如果事件A包含于事件B,则P(A) ≤...
HPC openMP AVX2
Introduction HPCSequential programs(串行程序)Parallel programs(并行程序)OpenMPOpenMP execution modelfork - join 并行模式 只有一个master thread ,程序开始(单线程)- fork - parallel - join OpenMP memory modelAll threads have access to the same **shared memory space **所有线程共享同意内存空间 OpenMP derectives1#pragma omp <directive> [clause[[,] clause] ... ] #pragma omp :告诉编译器这是一个 OpenMP 指令。 :具体的并行控制指令。 clause :附加选项(子句),比如 private、reduction、schedule。 指令parallel表是这段代码被多个线程并行执行 1234#pragma omp...
Robust Distributed Algorithms
RDA笔记HomeworkHomework_solution
openMP
Introduction HPCSequential programs(串行程序)Parallel programs(并行程序)OpenMPOpenMP execution modelfork - join 并行模式 只有一个master thread ,程序开始(单线程)- fork - parallel - join OpenMP memory modelAll threads have access to the same **shared memory space **所有线程共享同意内存空间 OpenMP derectives1#pragma omp <directive> [clause[[,] clause] ... ] #pragma omp :告诉编译器这是一个 OpenMP 指令。 :具体的并行控制指令。 clause :附加选项(子句),比如 private、reduction、schedule。 指令parallel表是这段代码被多个线程并行执行 1234#pragma omp...
Prolog列表操作
计算列表的长度1234longueur([], 0).longueur([_|T], N) :- longueur(T, M), N is M + 1. 递归终止条件:longueur([], 0). ,当递归到列表中没有元素时,返回 0 。 递归计算列表剩余部分的长度:longueur([_|T], N) :- longueur(T, M), N is M + 1. 这条规则处理的是非空列表的情况。[_|T] 表示一个非空列表,其中 _ 表示列表的头元素(在这里我们并不关心具体是哪个元素,所以用匿名变量 _ 表示),T 是列表的尾(即除了头元素之外的其余元素组成的列表)。 当调用 longueur 谓词来计算非空列表的长度时,首先执行 longueur(T, M)。这是一个递归调用,目的是计算列表 T(即原列表去掉头元素后的剩余部分)的长度,并将结果存储在变量 M 中。通过不断递归调用,每次去掉列表的一个头元素,直到列表为空,此时触发基本情况 longueur([], 0),递归开始回溯。 计算当前列表的长度:在递归调用 longueur(T, M)...
Prolog简介
PROLOG简介人工智能语言是一类适应于人工智能和知识工程领域的、具有符号处理和逻辑推理能力的计算机程序设计语言,其中Prolog是当代最有影响的人工智能语言之一。 1.1....
Prolog内建函数
Prolog 内置函数介绍Prolog 提供了许多内置(内建)函数,这些函数在 SWI - Prolog 和其他 Prolog 版本中通常都可用。Prolog 内置函数常用的主要分为: 逻辑操作(fail/true/not) 数学运算(is, +, -, *, /, mod) 列表操作(member, append, length) 比较运算(=, ==, <, >) I/O 操作(write, read, open, close) 动态断言(assertz, retract) 1. 逻辑操作 内置谓词 作用 true. 总是成功。 fail. 总是失败。 not(Goal). 或 + Goal. 逻辑非(如果 Goal 成功,则失败,反之亦然)。 Goal1, Goal2. 逗号 , 代表逻辑“与”,两个 Goal 都必须成立。 Goal1 ; Goal2. 分号 ; 代表逻辑“或”,其中一个 Goal...
Fermeture Transitive
Fermeture Transitive d’un Graphe (传递闭包)图的传递闭包(Transitive Closure) 主要用于描述图中**可达性(reachability)**的关系。 给定一个有向图 G = (V, E) ,其传递闭包 G* 是一个新的图,其中:若 从顶点 u 可以通过某条路径到达 v,那么在 G* 中, (u, v) 之间直接有一条边。即:若 u 能通过 1 条或多条边到达 v ,则在传递闭包中直接连接 u 和 v。 Warshall算法Warshall 算法简介算法概述Warshall 算法用于计算有向图的传递闭包,即判断图中哪些顶点是可达的。它是 Floyd-Warshall 算法 的一种特例,专门用于可达性问题。 算法思想对于一个有向图的 邻接矩阵 A,如果存在路径 从顶点 i 到 j,则在 传递闭包矩阵 T 中,T[i][j] 置为 1。算法通过动态规划逐步更新可达性信息。 算法步骤 初始化:将原始邻接矩阵 A 作为可达性矩阵 T。 逐步加入中间点 k: 如果从 i 到 k 可达,且从 k 到 j 可达,那么...
Connexe de Matrices
Composants Connexes找连通分量(通过深度、广度搜索) 伪代码123456789101112131415161718192021222324252627//找连通分量procédure ComposantesConnexes(Graphe g)Début //Initialisation n ← nbSom(g) visite ← allocTab(n) pour chaque sommet s variant de 1 à n faire visite[s] ← faux finPour s ← 1 nbSomVisite ← 0 finParcours ← faux //Traitement Tantque non finParcours faire reParcoursProfondeur(s, visite, g, nbSomVisite, ....) //A modifier // itParcoursProfondeur(s, visite, g,...
Parcours de Graphe
ParcoursProfondeur对三种数据结构(MatAdj,ListeAdj,FS)的图进行递归和迭代两种方法的深度优先遍历(DFS)。 12345678910111213141516171819202122#include <stdio.h>#include <stdlib.h>#include "../structGraphe.h"//根据visite数组,返回下一个sommetint somSuivant(int s, int n, int *visite) { for (int i = s + 1; i < n; i++) { // 从 s+1 开始找 if (!visite[i]) { // 发现未访问的节点 return i; } } // 如果没有找到,则从头开始找 for (int i = 0; i < s; i++) { ...



