diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/exercies.md" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/exercies.md" new file mode 100644 index 0000000000000000000000000000000000000000..986a4f39a2a3c5b07311eaefaa369ce3aa03cd3a --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/exercies.md" @@ -0,0 +1,28 @@ +# 正则匹配 + +给你一个字符串s和一个字符模式p,请你来原生实现一个支持 '.'和'*'的正则表达式匹配。 + +'.' 匹配任意单个字符 +'*' 匹配零个或多个前面的那一个元素 +所谓匹配,是要涵盖整个字符串s的,而不是部分字符串。 + + +# 示例 + +## 示例 1 + +输入:s = "aa", p = "a" +输出:false +解释:"a" 无法匹配 "aa" 整个字符串。 + +## 示例 2 + +输入:s = "aa", p = "a*" +输出:true +解释:因为 '*' 代表可以匹配零个或多个前面的那一个元素, 在这里前面的元素就是 'a'。因此,字符串 "aa" 可被视为 'a' 重复了一次。 + +## 示例3: + +输入:s = "ab", p = ".*" +输出:true +解释:".*" 表示可匹配零个或多个('*')任意字符('.')。 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/solution.java" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/solution.java" new file mode 100644 index 0000000000000000000000000000000000000000..d338973aa01b8c1f997a97839c5f39f8439c6fe1 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/solution.java" @@ -0,0 +1,117 @@ + +import java.util.Scanner; + +class Main { + + public static void main(String[] args) { + + // 控制台输入 + Scanner scanner = new Scanner(System.in); + String s = scanner.nextLine(); + String p = scanner.nextLine(); + + scanner.close(); + // 调用方法 + boolean res = isMatch(s,p); + // 输出结果 + System.out.println(res); + + } + + /** + * + * @param s + * @param p + * @return + */ + public static boolean isMatch(String s, String p) { + int m = s.length(); + int n = p.length(); + + boolean[][] f = new boolean[m + 1][n + 1]; + f[0][0] = true; + for (int i = 0; i <= m; ++i) { + for (int j = 1; j <= n; ++j) { + if (p.charAt(j - 1) == '*') { + f[i][j] = f[i][j - 2]; + if (matches(s, p, i, j - 1)) { + f[i][j] = f[i][j] || f[i - 1][j]; + } + } else { + if (matches(s, p, i, j)) { + f[i][j] = f[i - 1][j - 1]; + } + } + } + } + return f[m][n]; + } + + public static boolean matches(String s, String p, int i, int j) { + if (i == 0) { + return false; + } + if (p.charAt(j - 1) == '.') { + return true; + } + return s.charAt(i - 1) == p.charAt(j - 1); + } +} + +/* + +1 +aa +a +false + +2 +aa +a* +true + +3 +ab +.* +true + +4 +abab +ab +false + +5 +abcabc +a.*c +true + +6 +123456 +123* +false + +7 +123456 +123.* +true + + + +8 +abcdef +a.*e +false + + +9 +abcdef +a.*f +true + + +10 +1234321 +1.*1 +true + + */ \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/1.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/1.in" new file mode 100644 index 0000000000000000000000000000000000000000..c0f85ea3bd6866db46dc270ef8ede1ffb7b932ae --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/1.in" @@ -0,0 +1,2 @@ +aa +a \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/1.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/1.out" new file mode 100644 index 0000000000000000000000000000000000000000..02e4a84d62c4b0fe9cca60bba7b9799f78f1f7ed --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/1.out" @@ -0,0 +1 @@ +false \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/10.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/10.in" new file mode 100644 index 0000000000000000000000000000000000000000..bd5c1fedf73c961894084a08da38fbfb242bf8cf --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/10.in" @@ -0,0 +1,2 @@ +1234321 +1.*1 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/10.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/10.out" new file mode 100644 index 0000000000000000000000000000000000000000..f32a5804e292d30bedf68f62d32fb75d87e99fd9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/10.out" @@ -0,0 +1 @@ +true \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/2.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/2.in" new file mode 100644 index 0000000000000000000000000000000000000000..8a3c086a9342c867a6bad1e5fc3aa407c1b0f21c --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/2.in" @@ -0,0 +1,2 @@ +aa +a* \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/2.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/2.out" new file mode 100644 index 0000000000000000000000000000000000000000..f32a5804e292d30bedf68f62d32fb75d87e99fd9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/2.out" @@ -0,0 +1 @@ +true \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/3.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/3.in" new file mode 100644 index 0000000000000000000000000000000000000000..384534182f5773355139b78fcfadff04267c3a94 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/3.in" @@ -0,0 +1,2 @@ +ab +.* \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/3.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/3.out" new file mode 100644 index 0000000000000000000000000000000000000000..f32a5804e292d30bedf68f62d32fb75d87e99fd9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/3.out" @@ -0,0 +1 @@ +true \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/4.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/4.in" new file mode 100644 index 0000000000000000000000000000000000000000..5c4a71ca6971886824e04403fea33ed4040b459e --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/4.in" @@ -0,0 +1,2 @@ +abab +ab \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/4.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/4.out" new file mode 100644 index 0000000000000000000000000000000000000000..02e4a84d62c4b0fe9cca60bba7b9799f78f1f7ed --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/4.out" @@ -0,0 +1 @@ +false \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/5.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/5.in" new file mode 100644 index 0000000000000000000000000000000000000000..aa3b4277d641778b4dc0c74fe4a5e57735f77e26 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/5.in" @@ -0,0 +1,2 @@ +abcabc +a.*c \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/5.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/5.out" new file mode 100644 index 0000000000000000000000000000000000000000..f32a5804e292d30bedf68f62d32fb75d87e99fd9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/5.out" @@ -0,0 +1 @@ +true \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/6.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/6.in" new file mode 100644 index 0000000000000000000000000000000000000000..71aa49cba9ecd953c41fd15efcff6bd7fe4cde01 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/6.in" @@ -0,0 +1,2 @@ +123456 +123* \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/6.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/6.out" new file mode 100644 index 0000000000000000000000000000000000000000..02e4a84d62c4b0fe9cca60bba7b9799f78f1f7ed --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/6.out" @@ -0,0 +1 @@ +false \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/7.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/7.in" new file mode 100644 index 0000000000000000000000000000000000000000..8977c55438ed1f17829971c2d02bd79818d9872f --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/7.in" @@ -0,0 +1,2 @@ +123456 +123.* \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/7.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/7.out" new file mode 100644 index 0000000000000000000000000000000000000000..f32a5804e292d30bedf68f62d32fb75d87e99fd9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/7.out" @@ -0,0 +1 @@ +true \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/8.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/8.in" new file mode 100644 index 0000000000000000000000000000000000000000..b3b186350cf4a08c15007e7d5bff472d51c5bd81 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/8.in" @@ -0,0 +1,2 @@ +abcdef +a.*e \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/8.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/8.out" new file mode 100644 index 0000000000000000000000000000000000000000..02e4a84d62c4b0fe9cca60bba7b9799f78f1f7ed --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/8.out" @@ -0,0 +1 @@ +false \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/9.in" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/9.in" new file mode 100644 index 0000000000000000000000000000000000000000..715aa50848968bbcdeec78b0e61cf5d5a389e6dd --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/9.in" @@ -0,0 +1,2 @@ +abcdef +a.*f \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/9.out" "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/9.out" new file mode 100644 index 0000000000000000000000000000000000000000..f32a5804e292d30bedf68f62d32fb75d87e99fd9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\344\270\255\347\255\211/\346\255\243\345\210\231\345\214\271\351\205\215/test_cases/9.out" @@ -0,0 +1 @@ +true \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/exercises.md" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/exercises.md" new file mode 100644 index 0000000000000000000000000000000000000000..b8222e4b4692b07bc1b7384ce01b86ce092d8fb9 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/exercises.md" @@ -0,0 +1,37 @@ +# 生命进化书 +小A有一本生命进化书,以一个树形结构记载了所有生物的演化过程。 +为了探索和记录其中的演化规律,小A提出了一种方法,可以以字符串的形式将其复刻下来,规则如下: +初始只有一个根节点,表示演化的起点,依次记录 01 字符串中的字符, +如果记录 0,则在当前节点下添加一个子节点,并将指针指向新添加的子节点; +如果记录 1,则将指针回退到当前节点的父节点处。 +现在需要应用上述的记录方法,复刻下它的演化过程。请返回能够复刻演化过程的字符串中, 字典序最小的 01 字符串; + + +注意:节点指针最终可以停在任何节点上,不一定要回到根节点。 + +## 输入描述 +parents[] 数组,其中,parents[i] 表示编号 i 节点的父节点编号(根节点的父节点为 -1)。 +## 输出描述 +返回能够复刻演化过程的字符串中, 字典序最小 的 01 字符串 + + +# 示例 +## 示例 1: + +输入:parents = [-1,0,0,2] + +输出:"00110" + +解释:共存在 2 种记录方案: +第 1 种方案为:0(记录编号 1 的节点) -> 1(回退至节点 0) -> 0(记录编号 2 的节点) -> 0((记录编号 3 的节点)) +第 2 种方案为:0(记录编号 2 的节点) -> 0(记录编号 3 的节点) -> 1(回退至节点 2) -> 1(回退至节点 0) -> 0(记录编号 1 的节点) +返回字典序更小的 "00110" + +## 示例 2: + +输入:parents = [-1,0,0,1,2,2] +输出:"00101100" + +提示: +1 <= parents.length <= 10^4 +-1 <= parents[i] < i (即父节点编号小于子节点) diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/solution.java" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/solution.java" new file mode 100644 index 0000000000000000000000000000000000000000..375e0122f8d49733e6c79dfffa1730b8a7c77f90 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/solution.java" @@ -0,0 +1,81 @@ + +import java.util.Scanner; + +import java.util.*; +import java.util.Arrays; + +class Main { + + static HashMap> child = new HashMap<>(); + + public static void main(String[] args) { + // 控制台输入 + Scanner scanner = new Scanner(System.in); + String numsStr = scanner.nextLine(); + + int[] nums = new int[]{}; + // 解析字符串,构造数组 + numsStr = numsStr.replaceAll(" ", ""); + + if (!"[]".equals(numsStr)) { + String[] numsStrArr = numsStr.replaceAll("\\[", "").replaceAll("\\]", "").split("\\,"); + nums = new int[numsStrArr.length]; + for (int i = 0; i < numsStrArr.length; i++) { + nums[i] = Integer.parseInt(numsStrArr[i].trim()); + } + } + + scanner.close(); + // 调用方法 + String res = evolutionaryRecord(nums); + // 输出结果 + System.out.println(res); + } + + /** + * [-1,0,0,2] + * 00110 + * + * [-1,0,0,1,2,2] + * 00101100 + * + * @param parents + * @return + */ + + public static String evolutionaryRecord(int[] parents) { + int n = parents.length; + if (n == 1) return ""; + for (int i = 0; i < n; i++) { + child.put(i, new ArrayList<>()); + if (parents[i] == -1) continue; + //子节点 + child.get(parents[i]).add(i); + } + StringBuilder sb = new StringBuilder(dfs(0)); + int end = 0; + for (int i = sb.length() - 1; i > 0; i--) { + if (sb.charAt(i) != '1') { + end = i; + break; + } + } + return sb.substring(0, end + 1); + } + + private static String dfs(int i) { + StringBuilder t = new StringBuilder(); + List path = new ArrayList<>(); + for (int x : child.get(i)) { + //加入路径 + path.add("0" + dfs(x) + "1"); + } + //排序 + Collections.sort(path); + for (String s : path) { + t.append(s); + } + return t.toString(); + } + +} diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/1.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/1.in" new file mode 100644 index 0000000000000000000000000000000000000000..2d751a678547a6e384ed22a68850cc4daccb814d --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/1.in" @@ -0,0 +1 @@ +[-1,0,0,2] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/1.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/1.out" new file mode 100644 index 0000000000000000000000000000000000000000..ef54619cd2fb101a4fdf9f535d745372546b5a9e --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/1.out" @@ -0,0 +1 @@ +00110 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/10.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/10.in" new file mode 100644 index 0000000000000000000000000000000000000000..22bc543927c4f5d2c787185ebb007362deea4767 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/10.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5,5,3,2,7,7,8] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/10.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/10.out" new file mode 100644 index 0000000000000000000000000000000000000000..f6c908e1bc0947dcd456d82f79f05eed17c2f7d8 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/10.out" @@ -0,0 +1 @@ +000010110111000011100 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/2.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/2.in" new file mode 100644 index 0000000000000000000000000000000000000000..5b64e770e1ca8ef633d6e51d0e831618b81d0c06 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/2.in" @@ -0,0 +1 @@ +[-1,0,0,1,2,2] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/2.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/2.out" new file mode 100644 index 0000000000000000000000000000000000000000..11df60eecbc4a6ae854155e8b85be794841aeca2 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/2.out" @@ -0,0 +1 @@ +00101100 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/3.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/3.in" new file mode 100644 index 0000000000000000000000000000000000000000..5d531df0a12410df498cc1400930ffc33cc17c36 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/3.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/3.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/3.out" new file mode 100644 index 0000000000000000000000000000000000000000..11df60eecbc4a6ae854155e8b85be794841aeca2 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/3.out" @@ -0,0 +1 @@ +00101100 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/4.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/4.in" new file mode 100644 index 0000000000000000000000000000000000000000..a42e531629d1b24f22322ff3e96836dce740cd32 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/4.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/4.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/4.out" new file mode 100644 index 0000000000000000000000000000000000000000..c86fdea3af7ecc602fcb483fe6f1900614762132 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/4.out" @@ -0,0 +1 @@ +0001110010 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/5.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/5.in" new file mode 100644 index 0000000000000000000000000000000000000000..0179b7babfd8ab509f2204733fd87495a83c03ec --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/5.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5,5] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/5.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/5.out" new file mode 100644 index 0000000000000000000000000000000000000000..424cacd99b781dc04838ebe7b96a5bbeccfde81d --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/5.out" @@ -0,0 +1 @@ +000101110010 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/6.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/6.in" new file mode 100644 index 0000000000000000000000000000000000000000..a74e376a113c9bdcba7b69eb77c0102f38e1c285 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/6.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5,5,3] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/6.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/6.out" new file mode 100644 index 0000000000000000000000000000000000000000..0d270a5707bb10679ed79a619a0e3d47876d4fdd --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/6.out" @@ -0,0 +1 @@ +00010111000110 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/7.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/7.in" new file mode 100644 index 0000000000000000000000000000000000000000..e8411fe02114294381c287ba3b3e6d2d2532a0a5 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/7.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5,5,3,2] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/7.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/7.out" new file mode 100644 index 0000000000000000000000000000000000000000..a39cd5bbd4f45eb2bff830aa9ee190dc6841fae8 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/7.out" @@ -0,0 +1 @@ +000101110001100 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/8.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/8.in" new file mode 100644 index 0000000000000000000000000000000000000000..1bd3f128a74835b9eafd3c058b05dde24b51f5aa --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/8.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5,5,3,2,7] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/8.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/8.out" new file mode 100644 index 0000000000000000000000000000000000000000..c17b5ce2038eb3333686376b16cb1f0188fb6b3d --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/8.out" @@ -0,0 +1 @@ +00001101110001100 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/9.in" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/9.in" new file mode 100644 index 0000000000000000000000000000000000000000..0bbbd290c7af7f6f79b32ecd899e0594cb1e8ce3 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/9.in" @@ -0,0 +1 @@ +[-1,0,1,1,0,4,5,5,3,2,7,7] \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/9.out" "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/9.out" new file mode 100644 index 0000000000000000000000000000000000000000..3079c815a2fa908b5349291513f9757c63410545 --- /dev/null +++ "b/exercises/chenguangjian20230719/\345\233\260\351\232\276/\347\224\237\345\221\275\350\277\233\345\214\226\344\271\246/test_cases/9.out" @@ -0,0 +1 @@ +0000101101110001100 \ No newline at end of file diff --git "a/exercises/chenguangjian20230719/\351\235\236\347\274\226\347\250\213\351\242\230/\351\242\230\347\233\256.md" "b/exercises/chenguangjian20230719/\351\235\236\347\274\226\347\250\213\351\242\230/\351\242\230\347\233\256.md" new file mode 100644 index 0000000000000000000000000000000000000000..285591a234e5c303ee754343432a7b4e85574373 --- /dev/null +++ "b/exercises/chenguangjian20230719/\351\235\236\347\274\226\347\250\213\351\242\230/\351\242\230\347\233\256.md" @@ -0,0 +1,31 @@ +问题1:下列哪一项不是人工智能的主要研究领域? +A. 机器学习 +B. 自然语言处理 +C. 计算机视觉 +D. 数据库管理 +答案:D +解答说明:人工智能的主要研究领域包括机器学习、自然语言处理和计算机视觉等,而数据库管理是计算机科学的一个重要分支,但不属于人工智能的主要研究领域。 + +问题2:下列哪一项不是监督学习的特点? +A. 需要大量标注数据 +B. 通过反馈调整模型 +C. 无需人工干预 +D. 适用于分类和回归问题 +答案:C +解答说明:监督学习需要大量标注数据,通过反馈调整模型,适用于分类和回归问题。但是,监督学习需要人工进行数据标注,所以选项C不是监督学习的特点。 + +问题3:下列哪一项是深度学习的特点? +A. 无法处理大数据 +B. 无需特征工程 +C. 无法处理非结构化数据 +D. 无法处理高维数据 +答案:B +解答说明:深度学习的一个重要特点是可以自动从原始数据中学习特征,无需人工进行复杂的特征工程。 + +问题4:下列哪一项不是强化学习的特点? +A. 通过与环境的交互进行学习 +B. 无需预先知道环境的模型 +C. 无需反馈信号 +D. 适用于序列决策问题 +答案:C +解答说明:强化学习的特点包括通过与环境的交互进行学习,无需预先知道环境的模型,适用于序列决策问题。但是,强化学习需要通过反馈信号(奖励或惩罚)来调整策略,所以选项C不是强化学习的特点。 \ No newline at end of file