auto commit
This commit is contained in:
parent
a87769a8bf
commit
4eed86b32f
|
@ -444,7 +444,7 @@ Cache-Control: no-store
|
||||||
|
|
||||||
(二)强制确认缓存
|
(二)强制确认缓存
|
||||||
|
|
||||||
no-store 指令规定缓存服务器需要先向源服务器验证缓存资源的有效性,只有当缓存资源有效才将能使用该缓存对客户端的请求进行响应。
|
no-cache 指令规定缓存服务器需要先向源服务器验证缓存资源的有效性,只有当缓存资源有效才将能使用该缓存对客户端的请求进行响应。
|
||||||
|
|
||||||
```html
|
```html
|
||||||
Cache-Control: no-cache
|
Cache-Control: no-cache
|
||||||
|
|
|
@ -2365,7 +2365,7 @@ private int rob(int[] nums, int first, int last) {
|
||||||
定义一个数组 dp 存储错误方式数量,dp[i] 表示 i 个信和信封的错误方式数量。假设第 i 个信装到第 j 个信封里面,而第 j 个信装到第 k 个信封里面。根据 i 和 k 是否相等,有两种情况:
|
定义一个数组 dp 存储错误方式数量,dp[i] 表示 i 个信和信封的错误方式数量。假设第 i 个信装到第 j 个信封里面,而第 j 个信装到第 k 个信封里面。根据 i 和 k 是否相等,有两种情况:
|
||||||
|
|
||||||
- i==k,交换 i 和 k 的信后,它们的信和信封在正确的位置,但是其余 i-2 封信有 dp[i-2] 种错误装信的方式。由于 j 有 i-1 种取值,因此共有 (i-1)\*dp[i-2] 种错误装信方式。
|
- i==k,交换 i 和 k 的信后,它们的信和信封在正确的位置,但是其余 i-2 封信有 dp[i-2] 种错误装信的方式。由于 j 有 i-1 种取值,因此共有 (i-1)\*dp[i-2] 种错误装信方式。
|
||||||
- i != k,交换 i 和 j 的信后,第 i 个信和信封在正确的位置,其余 i-1 封信有 dp[i-1] 种错误装信方式。由于 j 有 i-1 种取值,因此共有 (n-1)\*dp[i-1] 种错误装信方式。
|
- i != k,交换 i 和 j 的信后,第 i 个信和信封在正确的位置,其余 i-1 封信有 dp[i-1] 种错误装信方式。由于 j 有 i-1 种取值,因此共有 (i-1)\*dp[i-1] 种错误装信方式。
|
||||||
|
|
||||||
综上所述,错误装信数量方式数量为:
|
综上所述,错误装信数量方式数量为:
|
||||||
|
|
||||||
|
@ -6197,20 +6197,19 @@ We cannot find a way to divide the set of nodes into two independent subsets.
|
||||||
public boolean isBipartite(int[][] graph) {
|
public boolean isBipartite(int[][] graph) {
|
||||||
int[] colors = new int[graph.length];
|
int[] colors = new int[graph.length];
|
||||||
Arrays.fill(colors, -1);
|
Arrays.fill(colors, -1);
|
||||||
|
for (int i = 0; i < graph.length; i++) {
|
||||||
for (int i = 0; i < graph.length; i++)
|
if (colors[i] == -1 && !isBipartite(graph, i, 0, colors))
|
||||||
if (colors[i] != -1 && !isBipartite(graph, i, 0, colors))
|
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isBipartite(int[][] graph, int cur, int color, int[] colors) {
|
private boolean isBipartite(int[][] graph, int node, int color, int[] colors) {
|
||||||
if (colors[cur] != -1)
|
if (colors[node] != -1)
|
||||||
return colors[cur] == color;
|
return colors[node] == color;
|
||||||
|
|
||||||
colors[cur] = color;
|
colors[node] = color;
|
||||||
for (int next : graph[cur])
|
for (int next : graph[node])
|
||||||
if (!isBipartite(graph, next, 1 - color, colors))
|
if (!isBipartite(graph, next, 1 - color, colors))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user