diff --git a/5.leetcode/src/com/fanxb/common/Q1846.java b/5.leetcode/src/com/fanxb/common/Q1846.java new file mode 100644 index 0000000..e20aa90 --- /dev/null +++ b/5.leetcode/src/com/fanxb/common/Q1846.java @@ -0,0 +1,29 @@ +package com.fanxb.common; + +import java.util.Arrays; + +/** + * 题目地址: https://leetcode-cn.com/problems/partition-labels/ + * 解题思路:首先遍历一次字符串,记录每个字母最后出现的位置 + * 然后再遍历一遍,记录当前字符串的开始位置start,结束位置end. 当第i个字母的结束位置》end时end=第i个字母的结束位置,知道i=end说明当前位置为字符串的结束位置 + * + * @author fanxb + * Date: 2020/6/9 15:10 + */ +public class Q1846 { + public int maximumElementAfterDecrementingAndRearranging(int[] arr) { + Arrays.sort(arr); + arr[0] = 1; + for (int i = 1; i < arr.length; i++) { + if (arr[i] - arr[i - 1] > 1) { + arr[i] = arr[i - 1] + 1; + } + } + return arr[arr.length - 1]; + } + + + public static void main(String[] args) { + System.out.println(new Q1846().maximumElementAfterDecrementingAndRearranging(new int[]{2,2,1,2,1})); + } +} diff --git a/redis-cluster/redis-cluster/.gitignore b/redis-cluster/redis-cluster/.gitignore new file mode 100644 index 0000000..97fdc0a --- /dev/null +++ b/redis-cluster/redis-cluster/.gitignore @@ -0,0 +1,6 @@ +data/main/* +!data/main/.gitkeep +data/slave1/* +!data/slave1/.gitkeep +data/slave2/* +!data/slave2/.gitkeep \ No newline at end of file diff --git a/redis-cluster/redis-cluster/config/node2.conf b/redis-cluster/redis-cluster/config/node2.conf new file mode 100644 index 0000000..1a5639b --- /dev/null +++ b/redis-cluster/redis-cluster/config/node2.conf @@ -0,0 +1,5 @@ +bind 0.0.0.0 +port 11002 +# 开启集群模式 +cluster-enabled yes +cluster-config-file "redis-node2.conf" diff --git a/redis-cluster/redis-cluster/config/node3.conf b/redis-cluster/redis-cluster/config/node3.conf new file mode 100644 index 0000000..92356d8 --- /dev/null +++ b/redis-cluster/redis-cluster/config/node3.conf @@ -0,0 +1,5 @@ +bind 0.0.0.0 +port 11003 +# 开启集群模式 +cluster-enabled yes +cluster-config-file "redis-node3.conf" diff --git a/redis-cluster/redis-cluster/config/node4.conf b/redis-cluster/redis-cluster/config/node4.conf new file mode 100644 index 0000000..b85eda8 --- /dev/null +++ b/redis-cluster/redis-cluster/config/node4.conf @@ -0,0 +1,5 @@ +bind 0.0.0.0 +port 11004 +# 开启集群模式 +cluster-enabled yes +cluster-config-file "redis-node4.conf" diff --git a/redis-cluster/redis-cluster/config/node5.conf b/redis-cluster/redis-cluster/config/node5.conf new file mode 100644 index 0000000..bb2149b --- /dev/null +++ b/redis-cluster/redis-cluster/config/node5.conf @@ -0,0 +1,5 @@ +bind 0.0.0.0 +port 11005 +# 开启集群模式 +cluster-enabled yes +cluster-config-file "redis-node5.conf" diff --git a/redis-cluster/redis-cluster/config/node6.conf b/redis-cluster/redis-cluster/config/node6.conf new file mode 100644 index 0000000..a5b80ec --- /dev/null +++ b/redis-cluster/redis-cluster/config/node6.conf @@ -0,0 +1,5 @@ +bind 0.0.0.0 +port 11006 +# 开启集群模式 +cluster-enabled yes +cluster-config-file "redis-node6.conf" diff --git a/redis-cluster/redis-cluster/docker-compose.yml b/redis-cluster/redis-cluster/docker-compose.yml new file mode 100644 index 0000000..a6feec3 --- /dev/null +++ b/redis-cluster/redis-cluster/docker-compose.yml @@ -0,0 +1,45 @@ +version: "3" +services: + + node1: + image: redis:6.2.4 + volumes: + - ./config:/usr/local/etc/redis + command: ["redis-server","/usr/local/etc/redis/node1.conf"] + network_mode: "host" + + node2: + image: redis:6.2.4 + volumes: + - ./config:/usr/local/etc/redis + command: ["redis-server","/usr/local/etc/redis/node2.conf"] + network_mode: "host" + + node3: + image: redis:6.2.4 + volumes: + - ./config:/usr/local/etc/redis + command: ["redis-server","/usr/local/etc/redis/node3.conf"] + network_mode: "host" + + node4: + image: redis:6.2.4 + volumes: + - ./config:/usr/local/etc/redis + command: ["redis-server","/usr/local/etc/redis/node4.conf"] + network_mode: "host" + + node5: + image: redis:6.2.4 + volumes: + - ./config:/usr/local/etc/redis + command: ["redis-server","/usr/local/etc/redis/node5.conf"] + network_mode: "host" + + node6: + image: redis:6.2.4 + volumes: + - ./config:/usr/local/etc/redis + command: ["redis-server","/usr/local/etc/redis/node6.conf"] + network_mode: "host" +