diff --git a/data/tree.json b/data/tree.json index 496f723a3b5c8a9a64461ddc1dfcaff80bbe49c2..1761b45b3cb51d0a6f998433e3728bf40e905281 100644 --- a/data/tree.json +++ b/data/tree.json @@ -14,7 +14,7 @@ "keywords": [], "children": [ { - "分数": { + "3.分数": { "node_id": "algorithm-767e5783175946fca871fe26e2e61009", "keywords": [ "蓝桥杯", @@ -25,7 +25,7 @@ "origin_num": 3 }, { - "等差素数列": { + "4.等差素数列": { "node_id": "algorithm-8cc4ed99b87640c3b3f3ef185323d12a", "keywords": [ "蓝桥杯", @@ -36,7 +36,7 @@ "origin_num": 4 }, { - "乘积尾零": { + "24.乘积尾零": { "node_id": "algorithm-d23aae9799354c4a826c222ed7208e14", "keywords": [ "蓝桥杯", @@ -47,7 +47,7 @@ "origin_num": 24 }, { - "成绩分析": { + "40.成绩分析": { "node_id": "algorithm-b0bc8007c50c458dbfac93ca3527cc0d", "keywords": [ "蓝桥杯", @@ -58,7 +58,7 @@ "origin_num": 40 }, { - "乘积最大": { + "41.乘积最大": { "node_id": "algorithm-74d6af2ef7da450392643d88be9127e1", "keywords": [ "蓝桥杯", @@ -69,7 +69,7 @@ "origin_num": 41 }, { - "猜年龄": { + "67.猜年龄": { "node_id": "algorithm-a413078fb6e74644b8c9f6e28896e377", "keywords": [ "蓝桥杯", @@ -80,7 +80,7 @@ "origin_num": 67 }, { - "递增三元组": { + "69.递增三元组": { "node_id": "algorithm-d3ce23ded01648e484ddbc6dca80993b", "keywords": [ "蓝桥杯", @@ -91,7 +91,7 @@ "origin_num": 69 }, { - "第几个幸运数": { + "77.第几个幸运数": { "node_id": "algorithm-a3532059f6854b5abac0d07821a7457f", "keywords": [ "蓝桥杯", @@ -102,7 +102,7 @@ "origin_num": 77 }, { - "次数差": { + "88.次数差": { "node_id": "algorithm-c31721f7c5c446a1aef8644fb24769eb", "keywords": [ "蓝桥杯", @@ -113,7 +113,7 @@ "origin_num": 88 }, { - "猜字母": { + "99.猜字母": { "node_id": "algorithm-60bf07f474094ea4861b644904c5e93c", "keywords": [ "蓝桥杯", @@ -124,7 +124,7 @@ "origin_num": 99 }, { - "第39级台阶": { + "100.第39级台阶": { "node_id": "algorithm-83cefbec0dbb41108e7d99e083f66a00", "keywords": [ "蓝桥杯", @@ -135,7 +135,7 @@ "origin_num": 100 }, { - "9数算式": { + "104.9数算式": { "node_id": "algorithm-c494e66aa2ad4808b47e456a7bdaa772", "keywords": [ "蓝桥杯", @@ -146,7 +146,7 @@ "origin_num": 104 }, { - "错误票据": { + "106.错误票据": { "node_id": "algorithm-a9d0d395dfff4e36a46f5e7163e0ff5f", "keywords": [ "蓝桥杯", @@ -157,7 +157,7 @@ "origin_num": 106 }, { - "大数乘法": { + "112.大数乘法": { "node_id": "algorithm-854c7c9357bf408da0f7d370cfee9684", "keywords": [ "蓝桥杯", @@ -168,7 +168,7 @@ "origin_num": 112 }, { - "大衍数列": { + "114.大衍数列": { "node_id": "algorithm-12a6edfcdbb9460d8ec505301b388717", "keywords": [ "蓝桥杯", @@ -179,7 +179,7 @@ "origin_num": 114 }, { - "成绩统计": { + "120.成绩统计": { "node_id": "algorithm-15f36f7666994175aedd437488e68da9", "keywords": [ "蓝桥杯", @@ -190,7 +190,7 @@ "origin_num": 120 }, { - "比酒量": { + "126.比酒量": { "node_id": "algorithm-1ac7560d59b84773aff2830064ac1e04", "keywords": [ "蓝桥杯", @@ -201,7 +201,7 @@ "origin_num": 126 }, { - "第几天": { + "134.第几天": { "node_id": "algorithm-19afebab82bd4da5aa9ff1de9809fe1c", "keywords": [ "蓝桥杯", @@ -212,7 +212,7 @@ "origin_num": 134 }, { - "斐波那契": { + "135.斐波那契": { "node_id": "algorithm-b518039e0116402ab8aeb9f2301548f2", "keywords": [ "蓝桥杯", @@ -223,7 +223,7 @@ "origin_num": 135 }, { - "方阵转置": { + "149.方阵转置": { "node_id": "algorithm-f87a3d944ae64fcd95ca73760d1d6541", "keywords": [ "蓝桥杯", @@ -234,7 +234,7 @@ "origin_num": 149 }, { - "倍数问题": { + "158.倍数问题": { "node_id": "algorithm-fa31e435f82f44bb8b3e8cf972b553d5", "keywords": [ "蓝桥杯", @@ -253,7 +253,7 @@ "keywords": [], "children": [ { - "单词分析": { + "92.单词分析": { "node_id": "algorithm-4b856b27330f4d339b92e11ee70a21c2", "keywords": [ "蓝桥杯", @@ -264,7 +264,7 @@ "origin_num": 92 }, { - "分类计数": { + "97.分类计数": { "node_id": "algorithm-2d03aeeb7da8465ebd24219036759214", "keywords": [ "蓝桥杯", @@ -275,7 +275,7 @@ "origin_num": 97 }, { - "翻硬币": { + "98.翻硬币": { "node_id": "algorithm-149ee60024bd4ba9ab4294c886da379f", "keywords": [ "蓝桥杯", @@ -294,7 +294,7 @@ "keywords": [], "children": [ { - "抽签": { + "35.抽签": { "node_id": "algorithm-9db143053b5f47d4a12a78c1d9305381", "keywords": [ "蓝桥杯", @@ -305,7 +305,7 @@ "origin_num": 35 }, { - "打印图形": { + "58.打印图形": { "node_id": "algorithm-c569f000d9824cf38b99d16d502f2903", "keywords": [ "蓝桥杯", @@ -316,7 +316,7 @@ "origin_num": 58 }, { - "带分数": { + "143.带分数": { "node_id": "algorithm-ab3f7be94c6c40a98be300d2e95a00eb", "keywords": [ "蓝桥杯", @@ -327,7 +327,7 @@ "origin_num": 143 }, { - "等差数列": { + "163.等差数列": { "node_id": "algorithm-3efe0ae366bc4e228a1548ce391cbeae", "keywords": [ "蓝桥杯", @@ -346,7 +346,7 @@ "keywords": [], "children": [ { - "堆的计数": { + "124.堆的计数": { "node_id": "algorithm-ecec4d44f15e4e119a6ffa344a928d1e", "keywords": [ "蓝桥杯", @@ -372,7 +372,7 @@ "keywords": [], "children": [ { - "方程整数解": { + "14.方程整数解": { "node_id": "algorithm-ab6e06379142458d81b52ced907ba37d", "keywords": [ "蓝桥杯", @@ -383,7 +383,7 @@ "origin_num": 14 }, { - "放棋子": { + "23.放棋子": { "node_id": "algorithm-cb3754519d9e4d219738857891b8cde4", "keywords": [ "蓝桥杯", @@ -394,7 +394,7 @@ "origin_num": 23 }, { - "分巧克力": { + "28.分巧克力": { "node_id": "algorithm-7221e2ee6a00460996aa015a80759bcf", "keywords": [ "蓝桥杯", @@ -405,7 +405,7 @@ "origin_num": 28 }, { - "等腰三角形": { + "53.等腰三角形": { "node_id": "algorithm-cfe4503d64864fc1b6463c43b9490dc2", "keywords": [ "蓝桥杯", @@ -416,7 +416,7 @@ "origin_num": 53 }, { - "分糖果": { + "54.分糖果": { "node_id": "algorithm-c6e9a8221615498ea371735da85980b6", "keywords": [ "蓝桥杯", @@ -427,7 +427,7 @@ "origin_num": 54 }, { - "方格填数": { + "63.方格填数": { "node_id": "algorithm-db1ed2ecd6f94defb58f80f17f9bad36", "keywords": [ "蓝桥杯", @@ -438,7 +438,7 @@ "origin_num": 63 }, { - "夺冠概率": { + "137.夺冠概率": { "node_id": "algorithm-e1f95019724f4030858a115e5df5feef", "keywords": [ "蓝桥杯", @@ -449,7 +449,7 @@ "origin_num": 137 }, { - "7段码": { + "162.7段码": { "node_id": "algorithm-8c292e5128334293b8c31da3907af1b4", "keywords": [ "蓝桥杯", @@ -460,7 +460,7 @@ "origin_num": 162 }, { - "颠倒的价牌": { + "175.颠倒的价牌": { "node_id": "algorithm-e2430a87aecc45f2bd5613d40acafca0", "keywords": [ "蓝桥杯", @@ -471,7 +471,7 @@ "origin_num": 175 }, { - "承压计算": { + "187.承压计算": { "node_id": "algorithm-3175bd446f604d3e8d151b01fb2646a3", "keywords": [ "蓝桥杯", @@ -490,7 +490,7 @@ "keywords": [], "children": [ { - "搭积木": { + "6.搭积木": { "node_id": "algorithm-babb05ebab174653ada021e2ec1903a0", "keywords": [ "蓝桥杯", @@ -501,7 +501,7 @@ "origin_num": 6 }, { - "分配口罩": { + "51.分配口罩": { "node_id": "algorithm-b045e43ec8cb439193c2228aaebf4644", "keywords": [ "蓝桥杯", @@ -512,7 +512,7 @@ "origin_num": 51 }, { - "方格分割": { + "65.方格分割": { "node_id": "algorithm-5a03bc0d3e9b4370ade8fa0a5cab3334", "keywords": [ "蓝桥杯", @@ -523,7 +523,7 @@ "origin_num": 65 }, { - "超级胶水": { + "121.超级胶水": { "node_id": "algorithm-f78a654cf66a4083afe56fb16d455c57", "keywords": [ "蓝桥杯", @@ -534,7 +534,7 @@ "origin_num": 121 }, { - "凑算式": { + "156.凑算式": { "node_id": "algorithm-f985e07ccc774560b155b868da66ee2f", "keywords": [ "蓝桥杯", @@ -545,7 +545,7 @@ "origin_num": 156 }, { - "大臣的旅费": { + "188.大臣的旅费": { "node_id": "algorithm-f836e86d038343f2b3f7fd7cf0543b86", "keywords": [ "蓝桥杯", @@ -571,7 +571,7 @@ "keywords": [], "children": [ { - "测试次数": { + "91.测试次数": { "node_id": "algorithm-de9dd63a6b014f709009ec1578bd4210", "keywords": [ "蓝桥杯", @@ -582,7 +582,7 @@ "origin_num": 91 }, { - "地宫取宝": { + "117.地宫取宝": { "node_id": "algorithm-cfdcba71563e4292bc529a7cc7c087fe", "keywords": [ "蓝桥杯", @@ -630,7 +630,7 @@ "keywords": [], "children": [ { - "两数之和": { + "0.两数之和": { "node_id": "algorithm-07b8a7ed904c43ecb56a64ad88ea6552", "keywords": [ "leetcode", @@ -641,7 +641,7 @@ "origin_num": 0 }, { - "寻找两个正序数组的中位数": { + "3.寻找两个正序数组的中位数": { "node_id": "algorithm-ccadb47afcd24925a598057b6f57eb55", "keywords": [ "leetcode", @@ -652,7 +652,7 @@ "origin_num": 3 }, { - "三数之和": { + "14.三数之和": { "node_id": "algorithm-eadcf1cc2fe04a858a9b3959b39679bc", "keywords": [ "leetcode", @@ -663,7 +663,7 @@ "origin_num": 14 }, { - "四数之和": { + "17.四数之和": { "node_id": "algorithm-6ced76ddcf1843b48a60fb011e87e9af", "keywords": [ "leetcode", @@ -674,7 +674,7 @@ "origin_num": 17 }, { - "搜索旋转排序数组": { + "32.搜索旋转排序数组": { "node_id": "algorithm-a4eb3f0469b24146924f72f97f199814", "keywords": [ "leetcode", @@ -685,7 +685,7 @@ "origin_num": 32 }, { - "在排序数组中查找元素的第一个和最后一个位置": { + "33.在排序数组中查找元素的第一个和最后一个位置": { "node_id": "algorithm-8c477af729de472582bdbe59ce542725", "keywords": [ "leetcode", @@ -696,7 +696,7 @@ "origin_num": 33 }, { - "搜索插入位置": { + "34.搜索插入位置": { "node_id": "algorithm-3cc342d468d746c78d79cca20abcf2d3", "keywords": [ "leetcode", @@ -707,7 +707,7 @@ "origin_num": 34 }, { - "旋转图像": { + "47.旋转图像": { "node_id": "algorithm-1acfcc250aac4aa5a8f9c6d9bd3e52d2", "keywords": [ "leetcode", @@ -718,7 +718,7 @@ "origin_num": 47 }, { - "螺旋矩阵": { + "53.螺旋矩阵": { "node_id": "algorithm-a2d7a543b3544612b2ded810e038ae29", "keywords": [ "leetcode", @@ -729,7 +729,7 @@ "origin_num": 53 }, { - "合并区间": { + "55.合并区间": { "node_id": "algorithm-1cf93cdce7c74a59a3e9747d9db9cd03", "keywords": [ "leetcode", @@ -740,7 +740,7 @@ "origin_num": 55 }, { - "插入区间": { + "56.插入区间": { "node_id": "algorithm-4e30fcc0e2ce4f38b6de2a97b86247f4", "keywords": [ "leetcode", @@ -751,7 +751,7 @@ "origin_num": 56 }, { - "螺旋矩阵 II": { + "58.螺旋矩阵 II": { "node_id": "algorithm-148b2b56817448609cafac38f265c609", "keywords": [ "leetcode", @@ -762,7 +762,7 @@ "origin_num": 58 }, { - "矩阵置零": { + "72.矩阵置零": { "node_id": "algorithm-5cf5a41da0224dd4899c2ba710ef63be", "keywords": [ "leetcode", @@ -773,7 +773,7 @@ "origin_num": 72 }, { - "搜索二维矩阵": { + "73.搜索二维矩阵": { "node_id": "algorithm-d4bfa7763d0945db8aeebb37428c8836", "keywords": [ "leetcode", @@ -784,7 +784,7 @@ "origin_num": 73 }, { - "子集": { + "77.子集": { "node_id": "algorithm-ad815193d5314217b336755dd1f94116", "keywords": [ "leetcode", @@ -795,7 +795,7 @@ "origin_num": 77 }, { - "删除有序数组中的重复项 II": { + "79.删除有序数组中的重复项 II": { "node_id": "algorithm-16f4937169b5456484ee30f6feac1d4c", "keywords": [ "leetcode", @@ -806,7 +806,7 @@ "origin_num": 79 }, { - "搜索旋转排序数组 II": { + "80.搜索旋转排序数组 II": { "node_id": "algorithm-a0b16d0dcd8c4eabba59649d69f2082a", "keywords": [ "leetcode", @@ -825,7 +825,7 @@ "keywords": [], "children": [ { - "两数相加": { + "1.两数相加": { "node_id": "algorithm-ad6de4c8735b4a8b8ae89cf9ed0e59bb", "keywords": [ "leetcode", @@ -836,7 +836,7 @@ "origin_num": 1 }, { - "删除链表的倒数第 N 个结点": { + "18.删除链表的倒数第 N 个结点": { "node_id": "algorithm-51547bc1c76e4f548089b42e54fefd63", "keywords": [ "leetcode", @@ -847,7 +847,7 @@ "origin_num": 18 }, { - "合并两个有序链表": { + "20.合并两个有序链表": { "node_id": "algorithm-8e3730b2552e438683edd17ea8e6d0bd", "keywords": [ "leetcode", @@ -858,7 +858,7 @@ "origin_num": 20 }, { - "合并K个升序链表": { + "22.合并K个升序链表": { "node_id": "algorithm-af001dbe7eb0462597b4a5fd86aab504", "keywords": [ "leetcode", @@ -869,7 +869,7 @@ "origin_num": 22 }, { - "两两交换链表中的节点": { + "23.两两交换链表中的节点": { "node_id": "algorithm-03249b7fafaa44b397e0420c4ef851d8", "keywords": [ "leetcode", @@ -880,7 +880,7 @@ "origin_num": 23 }, { - "K 个一组翻转链表": { + "24.K 个一组翻转链表": { "node_id": "algorithm-54ac2af686104c6fbb580175e89017cd", "keywords": [ "leetcode", @@ -891,7 +891,7 @@ "origin_num": 24 }, { - "删除排序链表中的重复元素 II": { + "81.删除排序链表中的重复元素 II": { "node_id": "algorithm-233b68b5a0654725a2202b7afd803489", "keywords": [ "leetcode", @@ -902,7 +902,7 @@ "origin_num": 81 }, { - "删除排序链表中的重复元素": { + "82.删除排序链表中的重复元素": { "node_id": "algorithm-2e5fd5ab03aa4374a7c34e7607e6b0bd", "keywords": [ "leetcode", @@ -913,7 +913,7 @@ "origin_num": 82 }, { - "分隔链表": { + "85.分隔链表": { "node_id": "algorithm-05a778f9b25848e5aeb66c6cb6ac6ee4", "keywords": [ "leetcode", @@ -924,7 +924,7 @@ "origin_num": 85 }, { - "反转链表 II": { + "91.反转链表 II": { "node_id": "algorithm-83905ab3dc2d48c9ad6caa8a60e82b21", "keywords": [ "leetcode", @@ -943,7 +943,7 @@ "keywords": [], "children": [ { - "无重复字符的最长子串": { + "2.无重复字符的最长子串": { "node_id": "algorithm-38aa7e68723b4032826cf9161a6d807d", "keywords": [ "leetcode", @@ -954,7 +954,7 @@ "origin_num": 2 }, { - "Z 字形变换": { + "5.Z 字形变换": { "node_id": "algorithm-377db31810a14cffb4c9aaa62042fc10", "keywords": [ "leetcode", @@ -965,7 +965,7 @@ "origin_num": 5 }, { - "字符串转换整数 (atoi)": { + "7.字符串转换整数 (atoi)": { "node_id": "algorithm-78d7f93b73ab455a936beee192435764", "keywords": [ "leetcode", @@ -976,7 +976,7 @@ "origin_num": 7 }, { - "最长公共前缀": { + "13.最长公共前缀": { "node_id": "algorithm-72092f29e27a4ebbb7bde80c5ad29df0", "keywords": [ "leetcode", @@ -987,7 +987,7 @@ "origin_num": 13 }, { - "实现 strStr()": { + "27.实现 strStr()": { "node_id": "algorithm-33e31f6fa4634b9484d47e99f16cfbff", "keywords": [ "leetcode", @@ -998,7 +998,7 @@ "origin_num": 27 }, { - "外观数列": { + "37.外观数列": { "node_id": "algorithm-36472d67e3f8470f9a4736a61be405ed", "keywords": [ "leetcode", @@ -1009,7 +1009,7 @@ "origin_num": 37 }, { - "字符串相乘": { + "42.字符串相乘": { "node_id": "algorithm-06c58aa2c0b24bd78ee07d91df71a06c", "keywords": [ "leetcode", @@ -1020,7 +1020,7 @@ "origin_num": 42 }, { - "最后一个单词的长度": { + "57.最后一个单词的长度": { "node_id": "algorithm-a6c2cff8feb34579bfac99c6a4fbcea8", "keywords": [ "leetcode", @@ -1031,7 +1031,7 @@ "origin_num": 57 }, { - "有效数字": { + "64.有效数字": { "node_id": "algorithm-5a293b8a3a8c4256902089b4016692dc", "keywords": [ "leetcode", @@ -1042,7 +1042,7 @@ "origin_num": 64 }, { - "复原 IP 地址": { + "92.复原 IP 地址": { "node_id": "algorithm-d1118330f5ab4f72bebb952130b4c984", "keywords": [ "leetcode", @@ -1053,7 +1053,7 @@ "origin_num": 92 }, { - "交错字符串": { + "96.交错字符串": { "node_id": "algorithm-54af19c37be946428a9fb4d22130f476", "keywords": [ "leetcode", @@ -1072,7 +1072,7 @@ "keywords": [], "children": [ { - "有效的括号": { + "19.有效的括号": { "node_id": "algorithm-c73d3d24a60f420f82ac494f0904e98f", "keywords": [ "leetcode", @@ -1083,7 +1083,7 @@ "origin_num": 19 }, { - "最长有效括号": { + "31.最长有效括号": { "node_id": "algorithm-8be2b66ea1a5469286bfd4b607ffc30a", "keywords": [ "leetcode", @@ -1094,7 +1094,7 @@ "origin_num": 31 }, { - "接雨水": { + "41.接雨水": { "node_id": "algorithm-d2c352294a324cde87f077cf1c3fc0f4", "keywords": [ "leetcode", @@ -1105,7 +1105,7 @@ "origin_num": 41 }, { - "简化路径": { + "70.简化路径": { "node_id": "algorithm-4d089e1f1bbb4ef39287be26d217f812", "keywords": [ "leetcode", @@ -1116,7 +1116,7 @@ "origin_num": 70 }, { - "柱状图中最大的矩形": { + "83.柱状图中最大的矩形": { "node_id": "algorithm-07ceef4bf79f48f5a290825aeba16d9a", "keywords": [ "leetcode", @@ -1127,7 +1127,7 @@ "origin_num": 83 }, { - "逆波兰表达式求值": { + "149.逆波兰表达式求值": { "node_id": "algorithm-765b0266150f4d7ea3f93ec89248bb36", "keywords": [ "leetcode", @@ -1138,7 +1138,7 @@ "origin_num": 149 }, { - "最小栈": { + "154.最小栈": { "node_id": "algorithm-e390d7a141d94907930a50469baa0cfa", "keywords": [ "leetcode", @@ -1149,7 +1149,7 @@ "origin_num": 154 }, { - "天际线问题": { + "217.天际线问题": { "node_id": "algorithm-23bec6ccffe24729b4891bac639f0870", "keywords": [ "leetcode", @@ -1160,7 +1160,7 @@ "origin_num": 217 }, { - "基本计算器": { + "223.基本计算器": { "node_id": "algorithm-56c34a1192d0451cb982e456a82c5c6d", "keywords": [ "leetcode", @@ -1171,7 +1171,7 @@ "origin_num": 223 }, { - "基本计算器 II": { + "226.基本计算器 II": { "node_id": "algorithm-c75a176a776a4b2d87cf2be7102b49b7", "keywords": [ "leetcode", @@ -1190,7 +1190,7 @@ "keywords": [], "children": [ { - "最大间距": { + "163.最大间距": { "node_id": "algorithm-e7fb5d6455fe490dbffe4b5cac8a5b95", "keywords": [ "leetcode", @@ -1201,7 +1201,7 @@ "origin_num": 163 }, { - "H 指数": { + "273.H 指数": { "node_id": "algorithm-9e8294b8930c462fb54eba9c47a8ecfd", "keywords": [ "leetcode", @@ -1212,7 +1212,7 @@ "origin_num": 273 }, { - "计算右侧小于当前元素的个数": { + "314.计算右侧小于当前元素的个数": { "node_id": "algorithm-4b5f859d4b83448e81381353bc1eba4c", "keywords": [ "leetcode", @@ -1223,7 +1223,7 @@ "origin_num": 314 }, { - "摆动排序 II": { + "323.摆动排序 II": { "node_id": "algorithm-e519f2364bbf42c1ba847fa47c745de6", "keywords": [ "leetcode", @@ -1234,7 +1234,7 @@ "origin_num": 323 }, { - "区间和的个数": { + "326.区间和的个数": { "node_id": "algorithm-56f49e9431934f4ab2e3b09586675d3c", "keywords": [ "leetcode", @@ -1245,7 +1245,7 @@ "origin_num": 326 }, { - "前 K 个高频元素": { + "346.前 K 个高频元素": { "node_id": "algorithm-04c75a4fe3714e1385bf72d429f8264d", "keywords": [ "leetcode", @@ -1256,7 +1256,7 @@ "origin_num": 346 }, { - "俄罗斯套娃信封问题": { + "353.俄罗斯套娃信封问题": { "node_id": "algorithm-f221f99db10a4f6387f4414b485c3ec4", "keywords": [ "leetcode", @@ -1267,7 +1267,7 @@ "origin_num": 353 }, { - "有序矩阵中第 K 小的元素": { + "377.有序矩阵中第 K 小的元素": { "node_id": "algorithm-6008013f4b44488584935091ecb34fec", "keywords": [ "leetcode", @@ -1278,7 +1278,7 @@ "origin_num": 377 }, { - "翻转对": { + "492.翻转对": { "node_id": "algorithm-3a4e0f87183b4a27b08de2624304ca54", "keywords": [ "leetcode", @@ -1289,7 +1289,7 @@ "origin_num": 492 }, { - "排序数组": { + "911.排序数组": { "node_id": "algorithm-1b8fb429d0f242cb991e78bb19cfda1f", "keywords": [ "leetcode", @@ -1308,7 +1308,7 @@ "keywords": [], "children": [ { - "盛最多水的容器": { + "10.盛最多水的容器": { "node_id": "algorithm-c2c888a4936d4a829ee95e51151a7df2", "keywords": [ "leetcode", @@ -1319,7 +1319,7 @@ "origin_num": 10 }, { - "最接近的三数之和": { + "15.最接近的三数之和": { "node_id": "algorithm-cb9503bb2fff401d9bc50547f91c9882", "keywords": [ "leetcode", @@ -1330,7 +1330,7 @@ "origin_num": 15 }, { - "删除有序数组中的重复项": { + "25.删除有序数组中的重复项": { "node_id": "algorithm-c2fdb51c5a0648e5a2583ec52225e85f", "keywords": [ "leetcode", @@ -1341,7 +1341,7 @@ "origin_num": 25 }, { - "移除元素": { + "26.移除元素": { "node_id": "algorithm-19baa04e7c604f0da6b99a51f548d860", "keywords": [ "leetcode", @@ -1352,7 +1352,7 @@ "origin_num": 26 }, { - "下一个排列": { + "30.下一个排列": { "node_id": "algorithm-5460e4499c4b486b8d3d420337a4e95c", "keywords": [ "leetcode", @@ -1363,7 +1363,7 @@ "origin_num": 30 }, { - "旋转链表": { + "60.旋转链表": { "node_id": "algorithm-ed4faf635e83447691ebbb5489a80619", "keywords": [ "leetcode", @@ -1374,7 +1374,7 @@ "origin_num": 60 }, { - "颜色分类": { + "74.颜色分类": { "node_id": "algorithm-d81595f7151443d48a988e70e6efb62b", "keywords": [ "leetcode", @@ -1385,7 +1385,7 @@ "origin_num": 74 }, { - "合并两个有序数组": { + "87.合并两个有序数组": { "node_id": "algorithm-7ef31e89b32342ff9dd569f71ad8493c", "keywords": [ "leetcode", @@ -1396,7 +1396,7 @@ "origin_num": 87 }, { - "环形链表": { + "140.环形链表": { "node_id": "algorithm-b36465af5596480baf353689bbb76872", "keywords": [ "leetcode", @@ -1407,7 +1407,7 @@ "origin_num": 140 }, { - "环形链表 II": { + "141.环形链表 II": { "node_id": "algorithm-dc2fe764852f445ea4f7393548a21e83", "keywords": [ "leetcode", @@ -1434,7 +1434,7 @@ "keywords": [], "children": [ { - "二叉树的中序遍历": { + "93.二叉树的中序遍历": { "node_id": "algorithm-28852b24083548cfa7d620b9991c5145", "keywords": [ "leetcode", @@ -1445,7 +1445,7 @@ "origin_num": 93 }, { - "不同的二叉搜索树 II": { + "94.不同的二叉搜索树 II": { "node_id": "algorithm-92fd99738b8f4fbc9b9a9fdeeeadb93f", "keywords": [ "leetcode", @@ -1456,7 +1456,7 @@ "origin_num": 94 }, { - "不同的二叉搜索树": { + "95.不同的二叉搜索树": { "node_id": "algorithm-38095f83157045a8a9461a9eb16f2485", "keywords": [ "leetcode", @@ -1467,7 +1467,7 @@ "origin_num": 95 }, { - "验证二叉搜索树": { + "97.验证二叉搜索树": { "node_id": "algorithm-712807eb4c214bfca939d8411c8c4d87", "keywords": [ "leetcode", @@ -1478,7 +1478,7 @@ "origin_num": 97 }, { - "恢复二叉搜索树": { + "98.恢复二叉搜索树": { "node_id": "algorithm-4c2a5b22d67c4455bf4524f938fba3b6", "keywords": [ "leetcode", @@ -1489,7 +1489,7 @@ "origin_num": 98 }, { - "相同的树": { + "99.相同的树": { "node_id": "algorithm-4b31baa58e8f47179d61dc60aeeddf3f", "keywords": [ "leetcode", @@ -1500,7 +1500,7 @@ "origin_num": 99 }, { - "二叉树中的最大路径和": { + "123.二叉树中的最大路径和": { "node_id": "algorithm-771dcac3f8264cc49799e5b53d5f7ff5", "keywords": [ "leetcode", @@ -1519,7 +1519,7 @@ "keywords": [], "children": [ { - "串联所有单词的子串": { + "29.串联所有单词的子串": { "node_id": "algorithm-cbdd961fd6b9430c9d3750a9d9659cdb", "keywords": [ "leetcode", @@ -1530,7 +1530,7 @@ "origin_num": 29 }, { - "有效的数独": { + "35.有效的数独": { "node_id": "algorithm-025fb8ec2ca945278ba5f2786336925c", "keywords": [ "leetcode", @@ -1541,7 +1541,7 @@ "origin_num": 35 }, { - "缺失的第一个正数": { + "40.缺失的第一个正数": { "node_id": "algorithm-b93725c019b442d6a2e7ea0ba6abe784", "keywords": [ "leetcode", @@ -1552,7 +1552,7 @@ "origin_num": 40 }, { - "字母异位词分组": { + "48.字母异位词分组": { "node_id": "algorithm-8cd8db97f6aa469cbad2d7fb4a5288e2", "keywords": [ "leetcode", @@ -1563,7 +1563,7 @@ "origin_num": 48 }, { - "最小覆盖子串": { + "75.最小覆盖子串": { "node_id": "algorithm-9d32e2a224824609a113f7bceb132d30", "keywords": [ "leetcode", @@ -1574,7 +1574,7 @@ "origin_num": 75 }, { - "同构字符串": { + "204.同构字符串": { "node_id": "algorithm-8b6209013d9e495d94c4643447f74475", "keywords": [ "leetcode", @@ -1593,7 +1593,7 @@ "keywords": [], "children": [ { - "组合": { + "76.组合": { "node_id": "algorithm-3afb387f4c1048ef850e7666b986fcb9", "keywords": [ "leetcode", @@ -1604,7 +1604,7 @@ "origin_num": 76 }, { - "单词搜索": { + "78.单词搜索": { "node_id": "algorithm-0f28f16066ca4246b4cca0dfaaedd478", "keywords": [ "leetcode", @@ -1615,7 +1615,7 @@ "origin_num": 78 }, { - "克隆图": { + "132.克隆图": { "node_id": "algorithm-2afbab0aedee40e4bf4c5941f223b561", "keywords": [ "leetcode", @@ -1626,7 +1626,7 @@ "origin_num": 132 }, { - "课程表": { + "206.课程表": { "node_id": "algorithm-f0d8530990c644fa969942569d12c9ea", "keywords": [ "leetcode", @@ -1637,7 +1637,7 @@ "origin_num": 206 }, { - "课程表 II": { + "209.课程表 II": { "node_id": "algorithm-372bf4b057724924953d3ed1d955f507", "keywords": [ "leetcode", @@ -1648,7 +1648,7 @@ "origin_num": 209 }, { - "矩阵中的最长递增路径": { + "328.矩阵中的最长递增路径": { "node_id": "algorithm-bbbb116584f348d3b05e0b6dff21633c", "keywords": [ "leetcode", @@ -1659,7 +1659,7 @@ "origin_num": 328 }, { - "重新安排行程": { + "331.重新安排行程": { "node_id": "algorithm-b720d774875b40e2ba3fc18c96fe37f0", "keywords": [ "leetcode", @@ -1678,7 +1678,7 @@ "keywords": [], "children": [ { - "整数反转": { + "6.整数反转": { "node_id": "algorithm-867a6d2a7ba345478115ef85500db75f", "keywords": [ "leetcode", @@ -1689,7 +1689,7 @@ "origin_num": 6 }, { - "回文数": { + "8.回文数": { "node_id": "algorithm-f504da6883a4473387071aa51a84c9af", "keywords": [ "leetcode", @@ -1700,7 +1700,7 @@ "origin_num": 8 }, { - "整数转罗马数字": { + "11.整数转罗马数字": { "node_id": "algorithm-a102f91e796844209df5cc53d031bb2f", "keywords": [ "leetcode", @@ -1711,7 +1711,7 @@ "origin_num": 11 }, { - "罗马数字转整数": { + "12.罗马数字转整数": { "node_id": "algorithm-103d87466f694bde98a43541e47e6c47", "keywords": [ "leetcode", @@ -1722,7 +1722,7 @@ "origin_num": 12 }, { - "两数相除": { + "28.两数相除": { "node_id": "algorithm-a1305e0a920647b0a74d80f6ee5d7bf9", "keywords": [ "leetcode", @@ -1733,7 +1733,7 @@ "origin_num": 28 }, { - "Pow(x, n)": { + "49.Pow(x, n)": { "node_id": "algorithm-dacb2bcca9084f00a506ad51b96c2b66", "keywords": [ "leetcode", @@ -1744,7 +1744,7 @@ "origin_num": 49 }, { - "排列序列": { + "59.排列序列": { "node_id": "algorithm-70966e6bdd1f4c1eafb1f0e165b50e5f", "keywords": [ "leetcode", @@ -1755,7 +1755,7 @@ "origin_num": 59 }, { - "加一": { + "65.加一": { "node_id": "algorithm-176c8b4c4a3a4cdcb5cfc1f7b08385d6", "keywords": [ "leetcode", @@ -1766,7 +1766,7 @@ "origin_num": 65 }, { - "二进制求和": { + "66.二进制求和": { "node_id": "algorithm-3f9c34a94dfc408a9f27660040511f00", "keywords": [ "leetcode", @@ -1777,7 +1777,7 @@ "origin_num": 66 }, { - "x 的平方根": { + "68.x 的平方根": { "node_id": "algorithm-6b2828daf66f43479d2d2a7e27e23932", "keywords": [ "leetcode", @@ -1796,7 +1796,7 @@ "keywords": [], "children": [ { - "LRU 缓存机制": { + "145.LRU 缓存机制": { "node_id": "algorithm-4c1b7da5fd2f40e889d75e8e2b3446f0", "keywords": [ "leetcode", @@ -1807,7 +1807,7 @@ "origin_num": 145 }, { - "设计推特": { + "354.设计推特": { "node_id": "algorithm-49a663e34f3b4ac9add98217d48818d5", "keywords": [ "leetcode", @@ -1818,7 +1818,7 @@ "origin_num": 354 }, { - "O(1) 时间插入、删除和获取随机元素": { + "379.O(1) 时间插入、删除和获取随机元素": { "node_id": "algorithm-9fb96243cf8d4b1c9b3040686e51b159", "keywords": [ "leetcode", @@ -1829,7 +1829,7 @@ "origin_num": 379 }, { - "O(1) 时间插入、删除和获取随机元素 - 允许重复": { + "380.O(1) 时间插入、删除和获取随机元素 - 允许重复": { "node_id": "algorithm-6abc321e067448a9bb47798f8c2732dc", "keywords": [ "leetcode", @@ -1840,7 +1840,7 @@ "origin_num": 380 }, { - "LFU 缓存": { + "459.LFU 缓存": { "node_id": "algorithm-9040820680414422982aed00e3774d88", "keywords": [ "leetcode", @@ -1859,7 +1859,7 @@ "keywords": [], "children": [ { - "最长回文子串": { + "4.最长回文子串": { "node_id": "algorithm-1e6ac09f50f44e1db49d38cd1a802168", "keywords": [ "leetcode", @@ -1870,7 +1870,7 @@ "origin_num": 4 }, { - "正则表达式匹配": { + "9.正则表达式匹配": { "node_id": "algorithm-99b5757ef6c441b3b2d31ea1c54d2469", "keywords": [ "leetcode", @@ -1881,7 +1881,7 @@ "origin_num": 9 }, { - "括号生成": { + "21.括号生成": { "node_id": "algorithm-2bd98707da9f4fe1b34ab125fa4664ea", "keywords": [ "leetcode", @@ -1892,7 +1892,7 @@ "origin_num": 21 }, { - "通配符匹配": { + "43.通配符匹配": { "node_id": "algorithm-718f13cb1b244f98a74f2e7a1a2f8bf0", "keywords": [ "leetcode", @@ -1903,7 +1903,7 @@ "origin_num": 43 }, { - "最大子序和": { + "52.最大子序和": { "node_id": "algorithm-bdd35a378b5b4b0db56eb77dbb0ecc4d", "keywords": [ "leetcode", @@ -1914,7 +1914,7 @@ "origin_num": 52 }, { - "不同路径": { + "61.不同路径": { "node_id": "algorithm-f240918fc113412798699dc069297b46", "keywords": [ "leetcode", @@ -1925,7 +1925,7 @@ "origin_num": 61 }, { - "不同路径 II": { + "62.不同路径 II": { "node_id": "algorithm-ec12f1edbe454de9a8b17515ac7919ad", "keywords": [ "leetcode", @@ -1936,7 +1936,7 @@ "origin_num": 62 }, { - "最小路径和": { + "63.最小路径和": { "node_id": "algorithm-007763b750db43dfb51105ee27c501c2", "keywords": [ "leetcode", @@ -1947,7 +1947,7 @@ "origin_num": 63 }, { - "爬楼梯": { + "69.爬楼梯": { "node_id": "algorithm-97049e95c4cc42f8afac4633eba54b5b", "keywords": [ "leetcode", @@ -1958,7 +1958,7 @@ "origin_num": 69 }, { - "编辑距离": { + "71.编辑距离": { "node_id": "algorithm-0dceaf29e6ea481aad96eafd5b0810d6", "keywords": [ "leetcode", @@ -1969,7 +1969,7 @@ "origin_num": 71 }, { - "最大矩形": { + "84.最大矩形": { "node_id": "algorithm-dba5ee6be2e6429b84e0396156bae1c5", "keywords": [ "leetcode", @@ -1980,7 +1980,7 @@ "origin_num": 84 }, { - "扰乱字符串": { + "86.扰乱字符串": { "node_id": "algorithm-6afc7481d3174bfda698af6f144a6438", "keywords": [ "leetcode", @@ -1991,7 +1991,7 @@ "origin_num": 86 }, { - "解码方法": { + "90.解码方法": { "node_id": "algorithm-4d49162365f44fe997bd2c115096054f", "keywords": [ "leetcode", @@ -2010,7 +2010,7 @@ "keywords": [], "children": [ { - "电话号码的字母组合": { + "16.电话号码的字母组合": { "node_id": "algorithm-96cde7c2b5bf4091a13d1d062ba4416a", "keywords": [ "leetcode", @@ -2021,7 +2021,7 @@ "origin_num": 16 }, { - "解数独": { + "36.解数独": { "node_id": "algorithm-fffcd047c23741f2bf02403fa41642ca", "keywords": [ "leetcode", @@ -2032,7 +2032,7 @@ "origin_num": 36 }, { - "组合总和": { + "38.组合总和": { "node_id": "algorithm-74f4a6cda5bb464ba2d7b1d272fa64cf", "keywords": [ "leetcode", @@ -2043,7 +2043,7 @@ "origin_num": 38 }, { - "组合总和 II": { + "39.组合总和 II": { "node_id": "algorithm-9d93c2f12e2b43089df066eaa963f3e4", "keywords": [ "leetcode", @@ -2054,7 +2054,7 @@ "origin_num": 39 }, { - "全排列": { + "45.全排列": { "node_id": "algorithm-24d7c655f1c24126bb173b84d65f2ee0", "keywords": [ "leetcode", @@ -2065,7 +2065,7 @@ "origin_num": 45 }, { - "全排列 II": { + "46.全排列 II": { "node_id": "algorithm-6e401e363f344f888ee8ce6a9b3894c5", "keywords": [ "leetcode", @@ -2076,7 +2076,7 @@ "origin_num": 46 }, { - "N 皇后": { + "50.N 皇后": { "node_id": "algorithm-af1d6b412f8f46198ea8876704555376", "keywords": [ "leetcode", @@ -2087,7 +2087,7 @@ "origin_num": 50 }, { - "N皇后 II": { + "51.N皇后 II": { "node_id": "algorithm-b88009c360534ffdb356b60ca011f92b", "keywords": [ "leetcode", @@ -2098,7 +2098,7 @@ "origin_num": 51 }, { - "格雷编码": { + "88.格雷编码": { "node_id": "algorithm-4691973bea6f43c5a7b67c3fe10ee149", "keywords": [ "leetcode", @@ -2109,7 +2109,7 @@ "origin_num": 88 }, { - "子集 II": { + "89.子集 II": { "node_id": "algorithm-511022f82b0249f696b576f23c6bf25d", "keywords": [ "leetcode", @@ -2128,7 +2128,7 @@ "keywords": [], "children": [ { - "跳跃游戏 II": { + "44.跳跃游戏 II": { "node_id": "algorithm-46ce8eaf4c134e308bbf0b5bafe888e2", "keywords": [ "leetcode", @@ -2139,7 +2139,7 @@ "origin_num": 44 }, { - "跳跃游戏": { + "54.跳跃游戏": { "node_id": "algorithm-c27fedd5842c4c389cc0145878b65f8c", "keywords": [ "leetcode", @@ -2150,7 +2150,7 @@ "origin_num": 54 }, { - "文本左右对齐": { + "67.文本左右对齐": { "node_id": "algorithm-942f57e096b4460e8adcf08de8cf6468", "keywords": [ "leetcode", @@ -2161,7 +2161,7 @@ "origin_num": 67 }, { - "买卖股票的最佳时机 II": { + "121.买卖股票的最佳时机 II": { "node_id": "algorithm-424ad1bf338d42138793e7a5de6df885", "keywords": [ "leetcode", @@ -2172,7 +2172,7 @@ "origin_num": 121 }, { - "加油站": { + "133.加油站": { "node_id": "algorithm-6877fe23a31441e4b26b23ed17307bdb", "keywords": [ "leetcode", @@ -2183,7 +2183,7 @@ "origin_num": 133 }, { - "分发糖果": { + "134.分发糖果": { "node_id": "algorithm-918f2173626042b79d288599bce5804c", "keywords": [ "leetcode", diff --git a/src/tree.py b/src/tree.py index e51eeb6a085616a0edba3b54c35c742cddb36196..89483a0d2f1fe59adbe1820eac11381ffa86c80d 100644 --- a/src/tree.py +++ b/src/tree.py @@ -108,7 +108,7 @@ class TreeWalker: for index, section_node in enumerate(chapter_node["children"]): section_title = list(section_node.keys())[0] full_path = os.path.join( - chapter_path, f"{section_node['origin_num']}.{section_title}") + chapter_path, f"{section_title}") if os.path.isdir(full_path): self.ensure_exercises(full_path) else: @@ -273,7 +273,7 @@ class TreeWalker: config = self.ensure_section_config(full_name) num, name = self.extract_node_env(full_name) result = { - name: { + f"{num}.{name}": { "node_id": config["node_id"], "keywords": config["keywords"], "children": config.get("children", [])