图论与网络优化

2.概念与计算

2.1 图的定义

2.1.1 定义

图(graph) G G G 是一个有序的三元组,记作 G = < V ( G ) , E ( G ) , ψ ( G ) > G=<V(G),E(G),\psi (G)> G=<V(G),E(G),ψ(G)>
V ( G ) V(G) V(G) 是顶点集。 E ( G ) E(G) E(G) 是边集。 ψ ( G ) \psi (G) ψ(G) 是关联函数,;例如 ψ G ( e ) = v i v j \psi_G (e)=v_iv_j ψG(e)=vivj
N G ( v ) N_G(v) NG(v) 表示点 v v v 的一阶邻域点。

相邻:与同一个顶点关联的两条边是相邻的。
:两个端点重合的边称为环。
连杆:端点不重合的边成为连杆。
k k k 重边:连接同一对顶点的 k k k 条边。
单边:一对顶点之间只有一条边。
简单图:无环无重边


2.1.2 度

:与顶点 v v v 关联的边的数目,记作 d ( v ) d(v) d(v)
度序列 ( d ( v 1 ) , d ( v 2 ) , . . . , d ( v v ) ) (d(v_1),d(v_2),...,d(v_v)) (d(v1),d(v2),...,d(vv))
孤立点:度为 0 0 0
悬挂点:度为 1 1 1
悬挂边:与悬挂点相关联的边。
偶点:度为偶数的顶点。
奇点:度为奇数的顶点。
最小度 δ ( G ) \delta(G) δ(G):图 G G G 顶点度的最小值。
最大度 Δ ( G ) \Delta(G) Δ(G):图 G G G 顶点度的最大值。

握手引理 ∑ v ∈ V = 2 ϵ \sum_{v\in V} = 2 \epsilon vV=2ϵ
例题:空间中不存在有奇数个面并且每个面只有奇数个棱的多面体。
思路:将面抽象为点,两面之间的棱为边,则转化成了有奇数个点且每个点都是奇数度的图,与握手引理矛盾,得证。

例题:证明非负整数序列 ( d 1 , d 2 , . . . , d v ) (d_1,d_2,...,d_v) (d1,d2,...,dv) 是某个图的度序列当且仅当 ∑ i = 1 v d i \sum_{i=1}^{v} d_i i=1vdi 是偶数。
思路:先画出 v v v 个孤立点,然后选序列中度大于 1 1 1 的点连环直至将每个点仍需添加的度为 0 0 0 1 1 1。然后将两两选择度为 1 1 1 的点。能连通即可得证。

图序列:简单图的度序列。
判断是否为图序列:非负整数序列 ( d 1 , d 2 , . . . , d v ) ( d 1 ≥ d 2 ≥ . . . ≥ d v ) (d_1,d_2,...,d_v)(d_1 \geq d_2 \geq ... \geq d_v) (d1,d2,...,dv)(d1d2...dv) 是图序列当且仅当 ∑ i = 1 v d i \sum_{i=1}^v d_i i=1vdi 是偶数,并且对一切整数 k ( 1 ≤ k ≤ v − 1 k(1\leq k\leq v-1 k(1kv1,有 ∑ i = 1 k ≤ k ( k − 1 ) ≤ ∑ i = k + 1 v m i n { k , d i } \sum_{i=1}^{k} \leq k(k-1) \leq \sum_{i=k+1}^{v}min \{k,d_i\} i=1kk(k1)i=k+1vmin{k,di}.
例题:(1,2,2,4,5);(1,2,3,3,4,5);(1,2,3,4,4,5) 三个是否是图序列?
思路:第一个不是图序列,当点数为 5 5 5 时,不存在度为 5 5 5 的简单图。第二个是图序列。 第三个不是图序列,先画出度为 5 5 5 的点的连边,然后只有三个点还能连边,需要的度依次为 2 , 3 , 3 2,3,3 2,3,3,简单图中的三个点不可能连出度为 3 3 3 的连边情况。


2.1.3 同构

同构:若两个图顶点之间建立一一对应的关系,且任意一对顶点的边数对应相同,则称两图是同构的。


2.2 子图和连通分支

2.2.1 子图

子图:设 H H H G G G 为两个图。若 V ( H ) ⊆ V ( G ) V(H) \subseteq V(G) V(H)V(G) E ( H ) ⊆ E ( G ) E(H) \subseteq E(G) E(H)E(G),则 H H H G G G 的子图。记作 H ⊆ G H \subseteq G HG
相等:设 H H H G G G 为两个图。若 V ( H ) = V ( G ) V(H) = V(G) V(H)=V(G) E ( H ) = E ( G ) E(H) = E(G) E(H)=E(G),则 H H H G G G 相等。记作 H = G H = G H=G
真子图:若 H ⊆ G H \subseteq G HG H ≠ G H \neq G H=G,则称 H H H G G G 的真子图,记作 H ⊂ G H \subset G HG
支撑(生成)子图:若 V ( H ) = V ( G ) V(H) = V(G) V(H)=V(G) E ( H ) ⊆ E ( G ) E(H) \subseteq E(G) E(H)E(G),则称 H H H G G G 的支撑子图或生成子图。
基础简单图:对图 G G G 去除重边和环后的图 H H H


2.2.2 导出子图

导出子图:设 V ′ V' V V ( G ) V(G) V(G) 的非空子集,以 V ′ V' V 为顶点集,以 E ′ = u v ∈ E ( G ) ∣ u , v ∈ V ′ E'= {uv \in E(G) | u,v \in V'} E=uvE(G)u,vV 为边集的 G G G 的子图称为 G 的由 V ′ V' V 导出的子图,记作 G [ V ′ ] G[V'] G[V],简称为 G G G 的导出子图。


2.2.3 连通分支

途径的起点/终点/长度/逆转/衔接/节 W = v o e 1 v 1 e 2 . . . e k v k W=v_oe_1v_1e_2...e_kv_k W=voe1v1e2...ekvk,这里 v i ∈ V ( 0 ≤ i ≤ k ) , e j = v j − 1 v j ∈ E ( 1 ≤ j ≤ k ) v_i\in V(0\leq i \leq k),e_j=v_{j-1}v_j \in E(1 \leq j \leq k) viV(0ik),ej=vj1vjE(1jk) v 0 v_0 v0 称为 W W W起点 v k v_k vk 称为 W W W终点,之间的 v v v 称为 W W W 的内部点。 W W W 称为 G G G ( v 0 , v k ) (v_0,v_k) (v0,vk) 途径 k k k W W W长度逆转如字面意思。衔接意味对于两个不同的 W W W,其中一条 W W W 的终点为另一个 W W W 的起点,则两条 W W W 可以衔接。 W W W 序列中的子集。

:途径 w w w 的边互不相同,则称 W W W 为迹。若起点终点相同,则 W W W闭迹
:途径 w w w 的顶点互不相同,则称 W W W 为链。一个顶点也称为一条链。
:起点、内部点互不相同的闭迹称为圈,长为 k k k 的圈称为 k k k 圈。根据 k k k 的奇偶性,相应地称 k k k 圈为奇圈和偶圈。
连通:若图 G G G 中存在 ( u , v ) (u,v) (u,v) 链,则顶点 u u u v v v 在图 G G G 中是连通的。
连通分支(数) V V V 的非空划分 ( V 1 , V 2 . . . , V ω ) (V_1,V_2...,V_\omega) (V1,V2...,Vω),导出子图 G [ V 1 ] , G [ V 2 ] , . . . , G [ V ω ] G[V_1],G[V_2],...,G[V_\omega] G[V1],G[V2],...,G[Vω] 称为 G G G 的连通分支。 ω ( G ) \omega(G) ω(G) 为图 G G G 的连通分支数。


2.2.4 距离

距离:图 G G G 中所有 ( u , v ) (u,v) (u,v) 链的最短链,记为 d ( u , v ) d(u,v) d(u,v),被称之为 u , v u,v u,v 之间的距离。
例题:设 G G G 是连通图,且 G G G 中至少有一对顶点不相邻,证明存在 u , v , w ∈ V u,v,w \in V u,v,wV,使 u v , v w ∈ E uv,vw \in E uv,vwE,但 u w ∉ E uw \notin E uw/E
思路:设 x , y ∈ V x,y \in V x,yV x y ∉ E xy \notin E xy/E。因 G G G 连通,故 G G G 中存在最短 ( x , y ) (x,y) (x,y) P = x v 1 v 2 . . . y P=xv_1v_2...y P=xv1v2...y
P P P 的最短性可知 x v 2 ∉ E xv_2 \notin E xv2/E,于是令 u = x , v = v 1 , w = v 2 u=x,v=v_1,w=v_2 u=x,v=v1,w=v2,则有 u v ∈ E , v w ∈ E uv \in E,vw \in E uvE,vwE u w ∉ E uw \notin E uw/E


2.3 重要图类

2.3.1 完全图

完全图:含有 C n 2 C_{n}^{2} Cn2 条边,且每对顶点都相邻的简单图,记作 K n K_n Kn
空图:边集为空的图。
平凡图:图中只有一个顶点。
非平凡图:除了平凡图以外的图。
例题:在任意 6 6 6 个人聚会上,要么有 3 3 3 个人相互认识,要么有 3 3 3 个人相互不认识。
思路:先构造 6 6 6 阶完全图 K 6 K_6 K6,其中 V = v 1 , v 2 , . . . , v 6 V = {v_1,v_2,...,v_6} V=v1,v2,...,v6 v i v_i vi 代表第 i i i 个人。
v i v_i vi v j v_j vj 互相认识,则染这条边为红色边,否则为蓝色边。于是问题转成了图中必定存在同色三角形问题。因此得证。


2.3.2 正则图

正则图/k正则图:每个顶点的度都相等(都为 k k k)的图称为( k k k)正则图。一般指的是简单图
例题:对于任意的正整数 n n n, n k nk nk 为偶数,当 n ≥ k + 1 n \geq k + 1 nk+1 n n n k k k 正则图存在吗?
思路:
γ 1 \gamma_1 γ1 法则构造偶数正则图法则。
G G G v v v k k k 正则图,且 k = 2 m k=2m k=2m m ≥ 1 m \geq 1 m1,按以下步骤生成新图 G ′ G' G
step 1:在图 G G G 中任取 m m m 条互不相邻的边: v 1 v 2 , v 3 v 4 , . . . , v 2 m − 1 v 2 m v_1v_2,v_3v_4,...,v_{2m-1}v_{2m} v1v2,v3v4,...,v2m1v2m 并删除。
step 2:增加新的顶点 v v v,并向所有被删边的点增加一条新边 v v i ( i = 1 , 2 , . . . , 2 m ) vv_i(i=1,2,...,2m) vvi(i=1,2,...,2m),得到新图 G ′ G' G

γ 2 \gamma_2 γ2 法则构造奇数正则图法则。
G G G v v v k k k 正则图,且 k = 2 m + 1 k=2m+1 k=2m+1 m ≥ 1 m \geq 1 m1,按以下步骤生成新图 G ′ G' G
step 1:在图 G G G 中任取 m m m 条互不相邻的边: v 1 v 2 , v 3 v 4 , . . . , v 2 m − 1 v 2 m v_1v_2,v_3v_4,...,v_{2m-1}v_{2m} v1v2,v3v4,...,v2m1v2m 并删除。
step 2:再在图 G G G 中任取 m m m 条互不相邻的边: u 1 u 2 , u 3 u 4 , . . . , u 2 m − 1 u 2 m u_1u_2,u_3u_4,...,u_{2m-1}u_{2m} u1u2,u3u4,...,u2m1u2m 并删除。
(step 1step 2 中可能会出现重复点)
step 3:增加新的顶点 w 1 w_1 w1,并向 step 1 中所有被删边的点增加一条新边 w 1 v i ( i = 1 , 2 , . . . , 2 m ) w_1v_i(i=1,2,...,2m) w1vi(i=1,2,...,2m)
step 4:再增加新的顶点 w 2 w_2 w2,并向 step 2 中所有被删边的点增加一条新边 w 2 u i ( i = 1 , 2 , . . . , 2 m ) w_2u_i(i=1,2,...,2m) w2ui(i=1,2,...,2m)
step 5:加边 w 1 w 2 w_1w_2 w1w2,得新图 G ′ G' G

定理: n n n k k k 正则简单图存在的充要条件是 k ≤ n − 1 k \leq n-1 kn1 n k nk nk 为偶数。
证明:设 G G G n n n k k k 正则简单图,每个顶点最多与其他 n − 1 n-1 n1 个顶点相邻,因此 k ≤ n − 1 k \leq n-1 kn1 成立。
k = 2 m k=2m k=2m,取 G = K k + 1 G=K_{k+1} G=Kk+1,则 G G G k k k 正则图。根据 γ 1 \gamma_1 γ1 法则,顶点每次可以增加 1 1 1 而点的度数不变。因此可以得到 n n n k k k 正则图。


2.3.3 二部图

(完全)二部图:若顶点集可以划分为两个子集 X X X Y Y Y,使得 G G G 中每条边的一端点在 X X X 中,另一个端点在 Y Y Y 中,则称 G G G 图为二部图。二部图 G G G 记作 G = ( X , Y , E ) G=(X,Y,E) G=(X,Y,E)。若集合 X X X 中的每个点都与 Y Y Y 中所有点都恰好有一条边,且 X 、 Y X、Y XY 均不为空集,则该图记作完全二部图,记作 K m , n K_{m,n} Km,n

定理:图 G G G 的二部图,当且仅当 G G G 中不含奇圈。
证明:
step 1
G = ( X , Y , E ) G=(X,Y,E) G=(X,Y,E) 是二部图, C = ( v 0 v 1 . . . v k v 0 ) C=(v_0v_1...v_kv_0) C=(v0v1...vkv0) G G G 中的一个圈,长度为 k + 1 k+1 k+1
v 0 ∈ X v_0 \in X v0X,于是后面节点依次属于 Y Y Y X X X。因此得到 v 2 i ∈ X , v 2 i + 1 ∈ Y v_{2i} \in X,v_{2i+1} \in Y v2iXv2i+1Y
因此 k = 2 l + 1 k=2l+1 k=2l+1。该圈为偶圈。
step 2
G G G 连通(若不连通则取一个连通分支证明之)。在 G G G 中任取一个顶点 u u u,令 X = { x ∣ d ( u , x ) 为偶数 } X=\{x|d(u,x)为偶数\} X={xd(u,x)为偶数} Y = { y ∣ d ( u , y ) 为奇数 } Y=\{y|d(u,y)为奇数\} Y={yd(u,y)为奇数}。显然 X 、 Y X、Y XY 是图 G G G 的一个划分。
为了证明 G G G 是二部图,只需证明 X X X Y Y Y 中任何两个顶点都不相邻。
v , w v,w v,w X X X 中任意两个顶点,令 P P P G G G 中最短 ( u , v ) (u,v) (u,v) 链,Q 是 G G G 中最短 ( u , w ) (u, w) (u,w) 链。
P P P Q Q Q 的最后一个公共顶点是 u 1 u_1 u1。因为 P P P Q Q Q 都是最短链,因此 P P P ( u , u 1 ) (u,u_1) (u,u1) 节和 Q Q Q ( u , u 1 ) (u,u_1) (u,u1) 节都是最短 ( u , u 1 ) (u,u_1) (u,u1) 链,从而长度相等。如下图:
例题示意图
又因 P P P Q Q Q 的长度都为偶数,故 P P P ( u 1 , v ) (u_1,v) (u1,v) P 1 P_1 P1 Q Q Q ( u 1 , w ) (u_1,w) (u1,w) Q 1 Q_1 Q1 有相同奇偶性,于是 ( v , w ) (v,w) (v,w) P 1 − 1 Q 1 P_1^{-1}Q_1 P11Q1 的长是偶数。因此若 v v v w w w 相邻,则 P 1 − 1 Q 1 w v P_1^{-1}Q_1wv P11Q1wv 就是 G G G 中的一个奇圈,与假设矛盾。


2.4 有向图

2.4.1 定义

有向图:有向图 D D D 指一个有序三元组 ( V ( D ) , A ( D ) , ψ D ) (V(D),A(D),\psi_D) (V(D),A(D),ψD),其中 V ( D ) ≠ ∅ V(D) \neq \varnothing V(D)= V ( D ) ∩ A ( D ) = ∅ V(D) \cap A(D) = \varnothing V(D)A(D)= V ( D ) V(D) V(D) 是顶点集。 A ( D ) A(D) A(D) 是弧集。 ψ D \psi_D ψD 称为 D D D 的关联函数,使得 D D D 每条弧对应于 D D D 的有序定点对。 ψ D ( a ) = ( u , v ) \psi_D(a)=(u,v) ψD(a)=(u,v) u u u 是弧 a a a 的尾, v v v 称为 a a a 的头。


2.4.2 基础图

基础图:在有向图中去掉弧上箭头的图。
定向图:对图 G G G 的每条边规定方向后的图。
相邻、连通、圈、子图 的概念和含义不变。


2.4.3 出度和入度

入弧:有向图 D D D 中以顶点 v v v 为头的弧。
出弧:有向图 D D D 中以顶点 v v v 为尾的弧。
入度:记作 d D − ( v ) d_D^-(v) dD(v),称为 v v v 的入度。
出度:记作 d D + ( v ) d_D^+(v) dD+(v),称为 v v v 的出度。
对于任何有向图D,有: ∑ v ∈ V d D − ( v ) = ∑ v ∈ V d D + ( v ) = ε ( D ) \sum_{v \in V}d_D^-(v) = \sum_{v \in V}d_D^+(v) = \varepsilon(D) vVdD(v)=vVdD+(v)=ε(D)

2.4.4 回路

有向途径 W = v 0 a 1 v 1 a 2 . . . v k − 1 a k v k W=v_0a_1v_1a_2...v_{k-1}a_kv_k W=v0a1v1a2...vk1akvk,其中交替项为顶点和弧。那么 W W W 就是有向途径。 v 0 v_0 v0 称为 W W W 的起点, v k v_k vk 称为 W W W 的终点。 k k k 称为 W W W 的长。 W W W 称为有向 ( v 0 , v k ) (v_0,v_k) (v0,vk) 途径。
有向闭途径:起点与终点相同的有向途径。
有向迹:弧各不相同的有向途径。
有向链(路):顶点各不相同的有向途径。


2.4.5 强连通分支

强连通 u , v u,v u,v 是有向图 D D D 中的两个顶点,若存在 ( u , v ) (u,v) (u,v) 路和 ( v , u ) (v,u) (v,u) 路使得两点可以相互到达,则称 u u u v v v 在图 D D D 中是强连通的。
强连通分支/强连通有向图 V ( D ) V(D) V(D) 的非空划分 V 1 V 2 . . . V ω V_1V_2...V_\omega V1V2...Vω D D D 中所导出的子图 D [ V 1 ] , D [ V 2 ] , . . . , D [ D ω ] D[V_1],D[V_2],...,D[D_\omega] D[V1],D[V2],...,D[Dω] 称为 D D D 的强连通分支。若 D D D 中只有一个强连通分支,则 D D D 是强连通有向图。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/164149.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTTP基础

HTTP请求报文格式 HTTP 的请求报文分为三个部分 请求行&#xff08;Request Line&#xff09;、请求头&#xff08;Request Header&#xff09;和请求体&#xff08;Request Body&#xff09;。请求体是HTTP请求的核心&#xff0c;其中包含了需要上传服务器的数据。常见的请求…

Open3D(C++) 最小二乘拟合二维直线(拉格朗日乘子法)

目录 一、算法原理二、代码实现三、结果展示本文由CSDN点云侠原创,爬虫网站自重 一、算法原理 平面直线的表达式为: y = k x + b (1) y=kx+

oracle-AWR报告生成方法

AWR报告生成方法 1. 以oracle用户登陆服务器 2. 进入到要保存awr报告的目录 3. 以sysdba身份连接数据库 sqlplus / as sysdba4. 执行生成AWR报告命令 ?/rdbms/admin/awrrpt.sql5. 选择AWR报告的文件格式 6. 选择生成多少天的AWR报告 7. 选择报告的快照起始和结束ID 8. 输入生…

npm ERR! exited with error code: 128

1.遇到的问题 报错信息&#xff1a;npm ERR! E:\tools\Gitt\Git\cmd\git.EXE ls-remote -h -t https://github.com/nhn/raphael.git npm ERR! npm ERR! fatal: unable to access https://github.com/nhn/raphael.git/: OpenSSL SSL_read: Connection was reset, errno 10054 …

JVM相关面试题

文章目录 什么是 JVM?Java语言的执行原理&#xff1f;Java的字节码文件结构&#xff1f;什么是u2,u4? JVM 加载过程都是什么步骤&#xff1f;什么是类加载器&#xff1f;什么是双亲委派模型如何打破双亲委派机制&#xff1f;什么是 tomcat 类加载机制&#xff1f;什么是JVM内…

C# 给List编个序号

给List编个号 int[] numbers { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };int i 0;var q (from n in numbersselect (index:i,number:n)).ToList();foreach (var v in q) {Console.WriteLine($"i {v.index}, v {v.number}"); }

关于刷题时使用数组的小注意事项

&#x1f4af; 博客内容&#xff1a;关于刷题时使用数组的小技巧 &#x1f600; 作  者&#xff1a;陈大大陈 &#x1f680; 个人简介&#xff1a;一个正在努力学技术的准前端&#xff0c;专注基础和实战分享 &#xff0c;欢迎私信&#xff01; &#x1f496; 欢迎大家&#…

Python如何实现多线程编程

目录 线程的创建 线程的管理 线程的同步 线程池 线程同步和锁 总结 Python是一种广泛使用的编程语言&#xff0c;它具有丰富的库和工具&#xff0c;可以用来实现多线程编程。多线程编程是一种并行计算技术&#xff0c;它通过将任务划分为多个独立的任务并利用多个线程同时…

vue实现在页面拖拽放大缩小div并显示鼠标在div的坐标

1、功能要求&#xff1a; 实现在一个指定区域拖拽div,并可以放大缩小&#xff0c;同时显示鼠标在该div里的坐标&#xff0c;如图可示 缩小并拖动 2、实现 <div class"div_content" ref"div_content"><div class"div_image" id"…

C++(Qt)软件调试---linux使用dmesg定位程序崩溃位置(14)

C(Qt)软件调试—linux使用dmesg定位程序崩溃位置&#xff08;14&#xff09; 文章目录 C(Qt)软件调试---linux使用dmesg定位程序崩溃位置&#xff08;14&#xff09;1、前言2、ELF文件3、常用工具4、使用dmesg定位异常位置1.1 异常发生在可执行程序中1.2 异常发生在动态库中 1、…

C++算法:二叉树的序列化与反序列化

#题目 序列化是将一个数据结构或者对象转换为连续的比特位的操作&#xff0c;进而可以将转换后的数据存储在一个文件或者内存中&#xff0c;同时也可以通过网络传输到另一个计算机环境&#xff0c;采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列化。…

花生好车基于 KubeSphere 的微服务架构实践

公司简介 花生好车成立于 2015 年 6 月&#xff0c;致力于打造下沉市场汽车出行解决方案第一品牌。通过自建直营渠道&#xff0c;瞄准下沉市场&#xff0c;现形成以直租、批售、回租、新能源汽车零售&#xff0c;四大业务为核心驱动力的汽车新零售平台&#xff0c;目前拥有门店…

[自定义 Vue 组件] 小尾巴 Logo 组件 TailLogo

文字归档于&#xff1a;https://www.yuque.com/u27599042/coding_star/apt6y731ybmxgu5g 组件效果 组件依赖 自定义字符串工具函数 stringIsNull https://www.yuque.com/u27599042/coding_star/slncupw7un3ce7cb import {stringIsNull} from "/utils/string_utils.js&q…

移动App安全检测的必要性,app安全测试报告的编写注意事项

随着移动互联网的迅猛发展&#xff0c;移动App已经成为人们日常生活中不可或缺的一部分。然而&#xff0c;虽然App给我们带来了便利和乐趣&#xff0c;但也伴随着一些潜在的安全风险。黑客、病毒、恶意软件等威胁着用户的隐私和财产安全&#xff0c;因此进行安全检测就显得尤为…

acwing算法基础之数据结构--KMP算法

目录 1 知识点2 模板 1 知识点 KMP算法已经集成到string类型的find()方法了&#xff0c; 但这里我们不用这个&#xff0c;我们自己来实现这个方法。 KMP算法的关键步骤&#xff1a; p[N]表示输入模式串&#xff0c;求取该模式串的ne[]数组。ne[i]表示前缀等于后缀的长度&…

UE4 UltrDynamicSky与场景物体进行交互

找到材质 找到其最父类的材质 把这个拖过去连上即可

TikTok Shop新结算政策:卖家选择权加强,电商市场蓄势待发

据悉&#xff0c;从2023年11月1日开始&#xff0c;TikTok Shop将根据卖家的店铺表现来应用3种不同类型的结算期&#xff0c;其中&#xff0c;标准结算期&#xff1a;资金交收期为8个日历日&#xff1b;快速结算期&#xff1a;资金交收期为3个日历日&#xff1b;延长结算期&…

尚硅谷Flink(完)FlinkSQL

&#x1f9d9;FlinkSQL&#x1f3c2;&#x1f93a; Table API 和 SQL 是最上层的 API&#xff0c;在 Flink 中这两种 API 被集成在一起&#xff0c;SQL 执行的对象也是Flink 中的表&#xff08;Table&#xff09;&#xff0c;所以我们一般会认为它们是一体的。 SQL API 是基于…

Python学习基础笔记七十七——json序列化

客户端和服务端之间需要交换数据才能完成各种功能。 假设 服务端程序都是用Python语言开发的话&#xff0c;那么 服务端从数据库中获取的最近的交易列表&#xff0c;可能就是像下面这样的一个Python列表对象&#xff1a; historyTransactions [{time : 20170101070311, #…

mysql过期数据的清理方案(Java/springboot+mybatis)

比如说现在数据库表信息增加的很快&#xff0c;然后我们需要对每个表设置过期删除策略&#xff1b; 大概思路就是&#xff1a;定时任务调度&#xff0c;给每个表制定sql&#xff0c;然后执行删除数据的sql //删除一个月前的数据 delete FROM test_info WHERE create_time <…