数据结构——图
一、图的基本概念
图(Graph)——图G是由两个集合 V(G) 和E(G) 组成的,记为 G=(V,E),其中:V(G) 是顶点的非空有限集, E(G) 是边的有限集合,边是顶点的无序对或有序对。
图不能是空图
1.图的术语和定义
1)有向图
若E是有向边的有限集合时,则图G为有向图。弧是顶点的有向对,记为<v,w>,其中v,w∈V,v称为弧尾,w称为弧头,<v,w>称为从v到w的弧
2)无向图
若E是无向边的有限集合时,则图G为无向图。边是顶点的无向对,记为(v,w)或(w,v),其中v,w∈V
3)简单图
一个图G若满足不存在重复边和环,那么称图G为简单图。
4)完全图
每个顶点之间都存在边的图。无向完全图有n(n-1)/2条边,有向完全图有n(n-1)条弧
5)子图,生成子图
设有两个图G1=(V1,E1),G2(V2,E2),若V2是V1的子集且E2是E1的子集,则称G2是G1的子图。若V2=V1,则称G2是G1的生成子图。
6)连通,连通图,连通分量
在无向图中,若从顶点v到顶点w有路径存在,则称v和w是连通的。若图G中任意两个顶点都是连通的,则称图G为连通图。无向图中的极大连通子图称为连通分量。如果图是非连通图,最多可以有条边
7)强连通图,强连通分量
在有向图中,如果有一对顶点v和w,从v到w和从w到v之间都有路径,则称这两个顶点是强连通的。若图中任何一对顶点都是强连通的,则称此图为强连通图。有向图中的极大强连通子图称为有向图的强连通分类。
8)生成树,生成森林
连通图的生成树是包含图中全部顶点的一个极小连通子图。若图中顶点数为n,则它的生成树含有n-1条边。
在非连通图中,连通分量的生成树构成了非连通图的生成森林。
9)顶点的度,入度和出度
在无向图中,顶点v的度是指依附于顶点v的边的条数,记为TD(v)。对于n个顶点,e条边的无向图,度之和为边数的2倍。
在有向图中,顶点v的度分为入度和出度,入度是以顶点v为终点的弧的数目,记为ID(v);出度是以顶点v为起点的有向边的数目,记为OD(v)。
10)边的权和网
在一个图中,每条边都可以标上具有某种含义的数值,该数值称为该边的权值。这种边上带权值的图称为带权图,也称网。
11)稠密图,稀疏图
边数很少的图称为稀疏图,反之称为稠密图。一般当图G满足|E|<|V|log|V|时,可以将G视为稀疏图。
12)路径,路径长度和回路
顶点Vp到Vq之间的一条路径是指顶点序列Vp,Vi1,Vi2,...,Vim,Vq。路径上的边的数目称为路径长度。第一个顶点和最后一个顶点相同的路径称为回路或环。若一个图有n个顶点,并且有大于n-1条边,则此图一定有环。
13)简单路径,简单回路
在路径序列中,顶点不重复出现的路径称为简单路径。除第一个顶点和最后一个顶点外,其余顶点不重复出现的回路称为简单回路。
14)距离
从顶点u出发到顶点v的最短路径若存在,则此路径的长度称为从u到v的距离
15)有向树
一个顶点的入度为0,其余顶点的入度均为1的有向图,称为有向树。
16)欧拉图
经过图中每条边一次且仅一次行遍所有顶点的回路(回到起点)称为欧拉回路,具有欧拉回路的图称为欧拉图。
17)哈密顿图
经过图中所有顶点仅一次的回路称为哈密顿回路,这种图叫哈密顿图。
2.图的存储
1)邻接矩阵法
用一个一维数组存储图中顶点信息,用一个二维数组存储图中边的信息。存储顶点之间邻接关系的二维数组称为邻接矩阵。
#define MaxVertexNum 100
typedef struct{char Vex[MaxVertexNum];int Edge[MaxVertexNum][MaxVertexNum];int vexnum,arcnum;
}MGraph;
所需存储空间
无向图的邻接矩阵一定是对称矩阵并且唯一,因此在实际存储中只需存储上(下)三角
对于无向图,邻接矩阵的第i行非零元素的个数正好是顶点i的度
对于有向图,邻接矩阵的第i行非零元素个数是顶点i的出度,第i列非零元素个数是顶点i的入度
适合稠密图
设图G的邻接矩阵为A,的非零元素等于顶点i到顶点j的长度为n的路径数目。
2)邻接表法
对图G的每个顶点建立一个单链表,单链表中的结点表示依附于顶点vi的边
typedef struct edge_node
{int adjvex;struct edge_node *next;
}edge;
typedef struct vertex_node
{char data;edge *first_edge;
}vertex;
typedef struct
{vertex adjlist[1000];int numVertex;int numEdge;
}GraphAdjList;
无向图存储空间为,有向图存储空间为
适合稀疏图
3)十字链表
在有向图邻接表中,找某一点的入度需要遍历整个边集,改用十字链表,增加头域连接弧头相同的边。
typedef struct ArcBox
{ int tailvex, headvex; // 弧尾、弧头在表头数组中位置struct arcnode *hlink; // 指向弧头相同的下一条弧struct arcnode *tlink; // 指向弧尾相同的下一条弧
} ArcBox;
typedef struct VexNode
{ VertexType data; // 存与顶点有关信息ArcBox *firstin; // 指向以该顶点为弧头的第1个弧结点ArcBox *firstout; // 指向以该顶点为弧尾的第1个弧结点
} VexNode;
VexNode OLGraph[M];
4)邻接多重表
在无向图邻接表中,同一条边被存储两次,改用邻接多重表,增加jlink指向下一条依附于顶点j的边。
typedef struct node
{ VisitIf mark; // 标志域,记录是否已经搜索过int ivex, jvex; // 该边依附的两个顶点在表头数组中位置struct EBox * ilink, * jlink;
//分别指向依附于ivex和jvex的下一条边
} EBox;
ypedef struct VexBox
{ VertexType data; // 存与顶点有关的信息EBox * firstedge; // 指向第一条依附于该顶点的边
} VexBox;
VexBox AMLGraph[M];
3.图的遍历
1)广度优先搜索BFS
思想:首先访问起始顶点v,接着由v出发,依次访问v的各个未访问过的顶点w1,w2,...,wi,然后依次访问w1,w2,...,wi的所有未被访问过的邻接顶点,重复以上过程直至所有顶点都被访问过。若此时图中还有未被访问的顶点,则另选一个未被访问过的顶点做起始点。
bool visited[MaxVertexNum];
void BFSTraverse(Graph G) {for (int i = 0; i < G.vexnum; i++) visited[i] = false;InitQueue(Q);for (int i = 0; i < G.vexnum; i++) {if (!visited[i]) BFS(G, i);}
}
void BFS(Graph G, int v) {visit(v);visited[v] = true;EnQueue(Q, v);while (!IsEmpty(Q)) {DeQueue(Q, v);for (w = FirstNeighbour(G, v); w >= 0; w = NextNeighbour(G, v, w)) {if (!visited[w]) {visit(w);visited[w] = true;EnQueue(Q, w);}}}
}
空间复杂度
采用邻接表存储时,每个顶点均需被搜索一次,在搜索任一顶点的临接点时,每条边至少访问一次,时间复杂度为
采用邻接矩阵存储时,时间复杂度为
2)深度优先搜索
首先访问起始顶点v,然后由v出发访问与v邻接且未被访问的任一顶点w1,再访问与w1邻接的且未被访问的任一顶点w2,重复上述过程。当不能再继续向下访问时,依次退回到最近被访问的顶点,若它还有邻接顶点未被访问过,则从该点开始继续上述搜索过程,直至所有顶点都被访问。
bool visited[MaxVertexNum];
void DFSTraverse(Graph G) {for (int i = 0; i < G.vexnum; i++) visited[i] = false;for (int i = 0; i < G.vexnum; i++) {if (!visited[i]) DFS(G, i);}
}
void DFS(Graph G, int v) {visit(v);visited[v] = true;EnQueue(Q, v);while (!IsEmpty(Q)) {DeQueue(Q, v);for (w = FirstNeighbour(G, v); w >= 0; w = NextNeighbour(G, v, w)) {if (!visited[w]) {DFS(G, w);}}}
}
空间复杂度
采用邻接表存储时,每个顶点均需被搜索一次,在搜索任一顶点的临接点时,每条边至少访问一次,时间复杂度为
采用邻接矩阵存储时,时间复杂度为
3)图的连通性
对于无向图来说,若无向图是连通的,则从任一节点出发,仅需一次遍历就能够访问图中的所有顶点;若是非连通的,则从某一个顶点出发,一次遍历只能访问到该顶点所在连通分量的所有顶点。对于有向图来说,若从初始顶点到图中的每个顶点都有路径,则能够访问到图中的所有顶点。
二、图的应用
1.最小生成树(最小连通子图,包含所有顶点,n-1条边)
假设要在 n 个城市之间建立通讯联络网,则连通 n 个城市只需要修建 n-1条线路,如何在最节省经费的前提下建立这个通讯网?
1)Prim算法
设 G=(V, GE) 为一个具有 n 个顶点的连通网络,T=(U, TE) 为生成树。
(1) 初始时,U = {u0},TE = {};
(2) 在所有的边 (u, v) 中选择一条权值最小的边,不妨设为(u,v);
(3) (u,v) 加入TE,同时将 v 加入U;
(4) 重复(2)(3),直到 U=V 为止;
void MiniSpanTree_P(MGraph G, VertexType u)
{//用普里姆算法从顶点u出发构造网G的最小生成树k = LocateVex(G, u);for (j = 0; j < G.vexnum; ++j) // 辅助数组初始化if (j != k)closedge[j] = { u, G.arcs[k][j] };closedge[k].Lowcost = 0; // 初始,U={u}for (i = 1; i < G.vexnum; ++i){k = minimum(closedge);// 求出加入生成树的下一个顶点(k)printf(closedge[k].Adjvex, G.vexs[k]);// 输出生成树上一条边closedge[k].Lowcost = 0; // 第k顶点并入U集for (j = 0; j < G.vexnum; ++j)// 修改其它顶点的最小边if (G.arcs[k][j] < closedge[j].Lowcost)closedge[j] = { G.vexs[k], G.arcs[k][j] };}
}
Prim算法的时间复杂度为,不依赖于|E|,适用于求解边稠密的图的最小生成树。
2)Kruskal算法
设连通网 N = ( V, { E } )。
① 初始时最小生成树只包含图的 n 个顶点,每个顶点为一棵子树(构成一个连通分量);
② 选取权值较小且所关联的两个顶点不在同一连通分量的边,将此边加入最小生成树中;
③ 重复② n-1 次,即得到包含 n 个顶点和 n-1 条边的最小生成树。
Kruskal算法采用堆来存放边的集合时,时间复杂度为,因此Kruskal算法适合于边稀疏的而顶点多的图。
2.最短路径
1)对于无权图,可以使用广度优先搜索查找最短路径
2)Dijkstra算法
辅助集合S: 当前已经得到最短路径的顶点集合 初始时,S={V0}
辅助数组Dist Dist[k] 表示 “当前”所求得的从源点到顶点 k 的最短路径
Dist[k] = <源点到顶点 k 的弧上的权值> 或者= 沿着“当前”最短路径到顶点 k的路径长度
假设“当前”最短路径为源点到顶点j的路径 则,Dist[k] =“当前”最短路径长度+ <顶点j到顶点 k 的弧上的权值>
①初始化S={v0}
V0和k之间存在弧: Dist[k]=G.arcs[v0][k]
V0和k之间不存在弧: Dist[k]=无穷
② 在所有从源点出发的弧中选取一条权值最小的弧,即为第一条最短路径。
③ 依次修改其它尚未确定最短路径的顶点Dist[k]值。
假设求得最短路径的顶点为u,则 Dist[k] =min( Dist[k], Dist[u] + G.arcs[u][k] )
重复②③n-1次,直到所有的顶点都在S中
#define MaxVertexNum 100
#define MAXN 0xffff
typedef struct {char Vex[MaxVertexNum];int Edge[MaxVertexNum][MaxVertexNum];int vexnum, arcnum;
}MGraph;
void Dijkstra(MGraph M, int dist[]) {int visited[MaxVertexNum];for (int i = 0; i < M.vexnum; i++) {visited[i] = 0;}int flag = 0;while (flag != M.vexnum) {int d = MAXN;int v = -1;for (int i = 0; i < M.vexnum; i++) {if (dist[i] < d&&visited[i] == 0) {d = dist[i];v = i;}}if (d == MAXN) {break;}visited[v] = 1;flag++;for (int i = 0; i < M.vexnum; i++) {if (visited[i] == 0 && dist[v] + M.Edge[v][i] < dist[i]) {dist[i] = dist[v] + M.Edge[v][i];}}}
}
int main()
{MGraph M;int x, y, dis;char a, b, c;scanf("%d,%d,%c", &M.vexnum, &M.arcnum, &c);getchar(); //读取换行符for (int i = 0; i < M.vexnum; i++)//初始化{for (int j = 0; j < M.vexnum; j++){M.Edge[i][j] = (i == j) ? 0 : MAXN;}}for (int i = 0; i < M.arcnum; i++){scanf("<%c,%c,%d>", &a, &b, &dis);getchar();x = a - 'a';//把字符转化为数字来算y = b - 'a';if (M.Edge[x][y] > dis)M.Edge[x][y] = dis;}int num = c - 'a';int dist[MaxVertexNum];for (int i = 0; i < M.vexnum; i++) {dist[i] = M.Edge[num][i];}Dijkstra(M,dist);for (int i = 0; i < M.vexnum; i++){printf("%c:%d\n", i + 'a', dist[i]);//记得转回字符}//system("pause");return 0;
}
时间复杂度
值得注意的是,边上带有负权值时,Dijkstra算法并不适用。
3)Floyd算法求各顶点之间的最短路径问题
按照顶点序号逐个试探,假设为任意2个顶点已计算出中间节点最大序号为K-1的最短路径,在此基础上进一步计算出任意2个顶点中间节点最大序号为K的最短路径。
①初始时设置一个 n 阶方阵,令其对角线元素为 0,若存在弧 <Vi, Vj>,则对应元素为权值;否则为∞。
②逐步试着在原直接路径中增加中间顶点,若加入中间点后路径变短,则修改之;否则,维持原值。
③所有顶点试探完毕,算法结束。
加入V1点 考察:
<v2, v3> = 2 ,<v2, v1> <v1,v3> = 17
<v3, v2> = ∞,<v3, v1> <v1,v2> = 7
加入V2点 考察:
<v1, v3> = 11 <v1, v2> <v2, v3> = 6
<v3, v1> = 3 <v3, v2> <v2, v1> = 13
加入V3点 考察:
<v1, v2> = 4 <v1, v3> <v3, v2> = 13
<v2, v1> = 6 <v2, v3> <v3, v1> = 5
3.有向无环图
若一个有向图中不存在环,则称为有向无环图,简称DAG图
有向无环图是描述含有公共子式的表达式的有效工具。(编译原理代码优化部分删除公共子表达式)
输入:一个基本块 Bi
输出:含有下列信息的基本块Bi 的DAG:
(1) 叶结点、内部结点按统一标记;
(2) 每个结点有一个标识符表(可空);
算法:
对基本块中每一四元式依次执行以下步骤
1. 构造叶结点;
2. 捕捉已知量,合并常数; //删除原常数结点
3. 捕捉公共子表达式; //删除冗余的公共子表达式
4. 捕捉可能的无用赋值; //删除
4. 拓扑排序
AOV网:若用DAG图表示一个工程,用顶点表示活动,用弧表示活动间优先关系的有向图称为顶点表示活动的网(Activity On Vertex network),简称AOV网。AOV网中不允许有回路,因为回路意味着某项活动以自己(或者后继)为先决条件。
拓扑排序:把AOV网络中各顶点按照它们相互之间的优先关系排列成一个线性序列的过程。
检测AOV网中是否存在环方法:对有向图构造其顶点的拓扑有序序列,若网中所有顶点都在它的拓扑有序序列中,则该AOV网必定不存在环。
在有向图中选一个没有前驱的顶点且输出之。
从图中删除该顶点和所有以它为尾的弧。
重复上述两步,直至全部顶点均已输出;或者当图中不存在无前驱的顶点为止。
int topo_sort(GraphAdjList *map)
{//把入度为0的点加入队列for (int i = 0; i < map->numVertex; i++){if (map->adjlist[i].index == 0){queeu[rear] = i;rear++;}}int count = 0;while (1){edge *p = map->adjlist[queeu[front]].first_edge;front++; //每次出队一个while (p != NULL) //出队之后相应的边的点入度减一,判断是否入度为0,为0加入{map->adjlist[p->adjvex].index--;if (map->adjlist[p->adjvex].index == 0){queeu[rear] = p->adjvex;rear++;}p = p->next;}QuickSort(front, rear - 1); //排序if (rear == front){break;}count++; //统计输出顶点数}if (count < map->numVertex - 1) //如果count>num,则必有环{return 0;}return 1;
}
5.关键路径
AOE网:用边表示活动的网。它是有一个带权的有向无环图。顶点表示事件/状态,弧表示活动,权值表示活动持续的时间。路径长度表示路径上各活动持续时间之和,关键路径表示路径长度最长的路径。
算法:
计算“状态(顶点)” 的最早发生时间 ve(j),“状态(顶点)” 的最迟发生时间 vl(k)
计算活动(弧)”的 最早开始时间 e(i),活动(弧)”的 最迟开始时间 l(i)
关键活动: e(i) = l(i)
最早开始时间: ve(源点) = 0; ve(k) = Max{ve(j) + dut(<j, k>)}
最迟开始时间: vl(汇点) = ve(汇点); vl(j) = Min{vl(k) – dut(<j, k>)}
活动(弧)发生时间的计算公式 假设第 i 条弧为 <j, k> ,则 对第 i 项活动言
e(i) = ve(j); l(i) = vl(k) – dut(<j,k>);
按AOE网拓扑序列的顺序,求顶点的ve; 按逆拓扑序列的顺序,求顶点的vl; 由ve、vl, 计算每个活动的e[k]和l[k]; 找出e[k]==l[k]的关键活动
6.连通分量
BFS或DFS
7.邮递员问题*
(1)若是欧拉图,则欧拉回路是最短投递路线
(2)否则,图中有偶数个奇度顶点,只需要把每对奇度点之间沿着最短路径重复走一遍即可。
8.TSP问题*
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 2021年全球与中国电动辅助轮椅行业市场规模及发展前景分析
2021年全球与中国电动辅助轮椅行业市场规模及发展前景分析 本报告研究全球与中国市场电动辅助轮椅的发展现状及未来发展趋势,分别从生产和消费的角度分析电动辅助轮椅的主要生产地区、主要消费地区以及主要的生产商。重点分析全球与中国市场的主要厂商产品特点、产品…...
2024/4/28 11:52:24 - 【Vue】使用this.$parent.变量名获取父组件的数据得到undefined【解决办法】
vue使用this.$parent.变量名获取父组件的数据得到undefined_韩大璐-CSDN博客 如果你使用【uni-app框架】基本都会包裹一层 API — Vue.jshttps://cn.vuejs.org/v2/api/#parentVue官方不建议使用$parent或$children来获取属性方法【因为页面的组件顺序的变化,会导致某些方法无法…...
2024/4/28 10:59:26 - JavaScript关于如何实现点击即可获取属性值。
JavaScript关如何获取所点击元件的属性值 事件背景:百度不到如何解决此类问题,于是运用自己的小脑袋及所学基本js知识来解决(某度真的垃圾) 1.事件 以获取标签内的id值为例,代码如下: //这里编写一个事件…...
2024/4/14 23:24:36 - 数据库实验一:创建CAP数据库
实验目的和要求 熟悉SQL Server 2008 中SQL Server Management Studio(SSMS)的环境了解SQL Server 2008数据库的逻辑结构和物理结构掌握创建和删除数据库的方法掌握创建和删除表的方法掌握简单查询 实验内容 设有一商品订购管理系统,其数据…...
2024/4/14 23:24:31 - thinkbook 15p安装ubuntu16.04 触摸板+无线网卡不能用问题解决
2021 thinkbook安装ubuntu16.04后触摸板无法使用,无线网卡无法使用的问题解决方法。 安装ubuntu20.04可正常使用,但由于需要16.04,故而必须解决不能使用的问题。 thinkbook 15p通过windows查看无线网卡的型号为 Intel Wi-Fi 6 AX201 160MHz触…...
2024/4/16 0:11:07 - 四、数据校验与去重
为何需要数据校验 在上一篇博客中,我们加入了元数据服务作为存储对象的全局唯一标识,并在测试时留下了一个伏笔,查看 hello 文件的版本时可以看到这两个版本的 size 一致,都是 14 。其实是上传了同一个 hello 文件但每次请求的散…...
2024/4/18 3:05:57 - Java 继承和多态之接口
任务描述相关知识 接口的定义实现接口接口的特点编程要求任务描述 本关任务:编写程序,实现两个数的求和运算和比较。 相关知识 Java 接口(Interface),是一系列方法的声明,是一些方法特征的集合,…...
2024/4/16 7:13:09 - 学习HCIA的第三天
OSI/RM七层参考模型——开放式系统互联参考模型 1979年—ISO—国际标准化组织 OSI的核心思想——分层 属于同一层面的不同功能,其目的和作用是相似或者相近的;属于不同层面的不同功能,其目的和作用存在明显的差异。每一层都在下层的基础上提…...
2024/4/18 12:40:55 - MySQL日志15连问
1. redo log是什么? 为什么需要redo log? redo log 是什么呢? redo log 是重做日志。它记录了数据页上的改动。它指事务中修改了的数据,将会备份存储。发生数据库服务器宕机、或者脏页未写入磁盘,可以通过redo log恢复。它是Innodb存储引…...
2024/4/19 8:05:42 - 初来乍到,先分享一下使自己自律学习的方法
自我介绍 大家好,我是木鱼,一个刚上大学的小白 因为学的软件工程,自然就来到CSDN(床上等你)这个圈子了ᶘ ͡ᴥ͡ᶅ。 分享经历 高中没咋努力,考到了长理。。。的一个三本学院,学历这块可以慢慢…...
2024/4/15 5:33:17 - 使用Ansible部署K8S服务
软件环境: 操作系统:CentOS-7 HostNameIP配置K8S-master10.211.55.20CPU:2 Memory: 4GK8S-node0110.211.55.21CPU:2 Memory: 4GK8S-node0210.211.55.22CPU:2 Memory: 4G 软件版本: 软件名称版本kubeadmV1.21.1kubectlV1.21.1kubeletV1.21.1…...
2024/4/14 23:24:11 - Linux常见指令
文章目录ls 指令pwd命令whoami命令cd 指令clear指令touch指令mkdir指令rmdir指令 && rm 指令man指令cp指令mv指令cat指令tac指令more指令less指令head指令tail指令date指令cal指令find指令which指令alias指令grep指令zip/unzip指令tar指令file指令bc指令uname指令几个重…...
2024/4/14 23:24:11 - (测试计划,测试用例,缺陷报告,测试报告,接口测试用例)总结
测试计划 测试计划包含什么? 测试背景、测试范围、测试目的、人员安排、时间分配、测试环境、风险评估等 测试环境: 服务器IP CPU 内存 虚拟机IP CPU 内存 操作系统 游览器 风险评估: 测试计划不充分测试方法有误测试过程偏离&…...
2024/4/14 23:24:36 - Windows下Python-openCV学习(四)-------色彩空间与通道
本章简明 色彩空间:GRAY色彩空间:cv2.COLOR_BGR2GRAYHSV色彩空间: cv2.COLOR_BGR2HSV 、cv2.COLOR_HSV2BGR通道:拆分通道:split()方法合并通道:merge()方法综合运用拆分通道和合并通道alpha通道色彩空间转换方法 dst=cv2.cvtColor(src,code) 参数:src : 转换前的初始图…...
2024/4/16 0:26:52 - Mybatis学习笔记:CRUD
文章目录一、namespace二、select三、insert四、update五、提交事务六、Map的使用七、如何实现模糊查询?一、namespace 配置文件中namespace中的名称为对应Mapper接口或者Dao接口的完整包名,必须一致! 二、select 需求:根据id查询用户 在…...
2024/4/14 23:25:32 - 利用python将PDF转为Excel并去掉换行符
PDF转Excel 文章目录PDF转Excel前言一、PDF转Excel二、去掉Excel的换行符不完善的地方前言 突然来的任务,时间紧,PDF内容为表格,有水印 一、PDF转Excel 提示:我比较笨,所以分了两步完成,第一步转为Excel…...
2024/4/5 5:51:36 - JavaScript实现贪吃蛇小游戏
JavaScript实现贪吃蛇小游戏 功能概述 本程序实现了如下功能: 贪吃蛇的基本功能 统计得分 开始与暂停 选择难度等级 设置快捷键 5.1 通过ijkl,wsad也能实现方向的切换 5.2 通过“P” 表示暂停,“C”表示开始或继续,"R&…...
2024/4/14 23:24:26 - 【补题日记】2018 CCPC桂林站
Pro 2018 China Collegiate Programming Contest - Guilin Site Sol A. Array Merge 贪心,如果没有顺序的限制,数字大的越靠前越优,而现在有顺序,所以把前i个元素综合考虑。 设前i个元素的平均值为a,则当新的值A[…...
2024/4/19 14:43:06 - R语言编程学习从Github上安装包解决网络问题
当我们想使用 R 安装一些 Github 相关的软件包,经常会遇到或者或那的网络问题,此时我们需要怎么做呢? 以最近大家分析疫情数据经常用的 Y叔的 nCov2019 包为例,通常我们可以使用如下的尝试顺序: 1. remotes 包安装 in…...
2024/4/14 23:24:26 - 766-C语言内存操作函数的实现
C语言内存操作函数的实现 memcpy内存拷贝函数 void* memcpy(void* destination, const void* source, size_t num);memcpy函数从source的位置开始向后拷贝num个字节的数据到destination的内存位置 这个函数在遇到\0的时候并不会停下来 如果source和destination有任何的重叠&a…...
2024/4/18 6:58:07
最新文章
- 618不可错过的数码好物精选!等等党必看清单汇总
无论是追求高效工作的职场人士,还是热爱科技、追求品质生活的消费者,都希望能找到那些既实用又富有创新精神的数码好物,现在正值618购物狂欢节来临之际,我精心为大家挑选了一份不可错过的数码好物清单,这份清单不仅汇聚…...
2024/4/28 19:48:38 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - Java深度优先搜索DFS(含面试大厂题和源码)
深度优先搜索(Depth-First Search,简称DFS)是一种用于遍历或搜索树或图的算法。DFS 通过沿着树的深度来遍历节点,尽可能深地搜索树的分支。当节点v的所在边都已被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这个…...
2024/4/27 12:46:58 - 腾讯云容器与Serverless的融合:探索《2023技术实践精选集》中的创新实践
腾讯云容器与Serverless的融合:探索《2023技术实践精选集》中的创新实践 文章目录 腾讯云容器与Serverless的融合:探索《2023技术实践精选集》中的创新实践引言《2023腾讯云容器和函数计算技术实践精选集》整体评价特色亮点分析Serverless与Kubernetes的…...
2024/4/23 0:21:15 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/28 13:52:11 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/28 3:28:32 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/26 23:05:52 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/28 13:51:37 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/28 15:57:13 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/28 1:22:35 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/25 18:39:14 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/4/26 23:04:58 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/26 19:46:12 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/27 11:43:08 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/27 8:32:30 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57