Algorithm
Depth-First Search
def DFS(G):
global count
mark = [0] * len(G) //create an empty stack
count = 0
for v in range(len(G)):
if mark[v] == 0:
DFSExplore(v, G, mark)
#print(mark)
def DFSExplore(v, G, mark):
global count
count = count + 1
mark[v] = count
for w in range(len(G)):
if G[v][w] != 0:
if mark[w] == 0:
DFSExplore(w, G, mark)
def test():
G = [[0, 1, 0, 1],
[1, 0, 0, 1],
[0, 0, 0, 1],
[1, 1, 1, 0]]
DFS(G)
Breadth-First Search
from queue import Queue
def BFS(G):
mark = [0] * len(G) //create an empty queue
count = 0
Q = Queue()
for v in range(len(G)):
if mark[v] == 0:
count = count + 1
mark[v] = count
Q.put(v) //queue containing just v
while not Q.empty():
u = Q.get() //dequeues u
for w in range(len(G)):
if G[u][w] != 0:
if mark[w] == 0:
count = count + 1
mark[w] = count
Q.put(w) //enqueues w
def test():
G = [[0, 1, 0, 1],
[1, 0, 0, 1],
[0, 0, 0, 1],
[1, 1, 1, 0]]
BFS(G)
Review
Tip
使用 webpack 搭建一个简单的 React 脚手架
SQL keywords
C
- COALESCE
-
D
-
E
-
F
-
G
-
H
-
I
-
J
-
M
-
N
-
O
-
S
-
T
-
U
[Union (SQL)](https://en.wikipedia.org/wiki/Union(SQL))_
-
W
- WITH RECURSIVE
Share
Blockchain-based Database to Ensure Data Integrity in Cloud Computing Environments
2020年发表于主流区块链实施国际会议,分为5个章节,第一节介绍了云计算环境下,由于数据攻击导致的加密签名验证的重要性。第二节介绍了一种逆函数加密算法。第三节通过案例研究的形式,介绍了欧洲的一个Sunfish的项目,它是基于FaaS的,是一个分布式云联合平台,但似乎仍然会对敏感性信息进行控制?第四节介绍了他们设计的两次区块链,如何应对网络攻击。第五节详细展开介绍了基于两层区块链的数据库,第一层是轻量级分布式协议,第二层是基于工作量证明的区块链,储存第一层的信息操作和相关证据。两层之间可以交互,平台成员通过信息接口进行操作。