11 2021 档案

0377-组合总和IV
摘要:给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。 题目数据保证答案符合 32 位整数范围。 示例 1: 输入:nums = [1,2,3], target = 4 输出:7 解释: 所有可能的组合为: 阅读全文

posted @ 2021-11-30 22:22 进击的davis 阅读(42) 评论(0) 推荐(0)

0518-零钱兑换II
摘要:给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带符号整数。 示例 1: 输入:amount = 5, 阅读全文

posted @ 2021-11-30 21:57 进击的davis 阅读(57) 评论(0) 推荐(0)

0474-一和零
摘要:给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例 1: 输入:strs = ["10", "0001", "1 阅读全文

posted @ 2021-11-30 08:35 进击的davis 阅读(84) 评论(0) 推荐(0)

0494-目标和
摘要:给你一个整数数组 nums 和一个整数 target 。 向数组中的每个整数前添加 '+' 或 '-' ,然后串联起所有整数,可以构造一个 表达式 : 例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1" 。 返回可以通 阅读全文

posted @ 2021-11-30 08:06 进击的davis 阅读(94) 评论(0) 推荐(0)

1049-最后一块石头的重量II
摘要:有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x ⇐ y。那么粉碎的可能结果如下: 如果 x == y,那么两块石头都会被完全粉碎; 如果 x != y,那么 阅读全文

posted @ 2021-11-29 23:00 进击的davis 阅读(41) 评论(0) 推荐(0)

0416-分割等和子集
摘要:给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例 1: 输入:nums = [1,5,11,5] 输出:true 解释:数组可以分割成 [1, 5, 5] 和 [11] 。 示例 2: 输入:nums = [1,2,3,5 阅读全文

posted @ 2021-11-29 22:22 进击的davis 阅读(66) 评论(0) 推荐(0)

0096-不同的二叉搜索树
摘要:给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n = 3 输出:5 示例 2: 输入:n = 1 输出:1 提示: 1 ⇐ n ⇐ 19 来源:力扣(LeetCode) 链接:https://l 阅读全文

posted @ 2021-11-29 21:18 进击的davis 阅读(55) 评论(0) 推荐(0)

django web应用之python logging TimedRotatingFileHandler的执行流程-源码分析
摘要:众所周知,python的自带logging模块是线程安全的,从内部源码也可看到,很多配置或者写入日志的时候,通过加锁-释放锁(threading.RLock())来实现线程安全。 内部源码参见**logging.__int__(line 210)**: _lock = threading.RLock 阅读全文

posted @ 2021-11-29 18:21 进击的davis 阅读(1046) 评论(0) 推荐(0)

0343-整数拆分
摘要:给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。 示例 1: 输入: 2 输出: 1 解释: 2 = 1 + 1, 1 × 1 = 1。 示例 2: 输入: 10 输出: 36 解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 3 阅读全文

posted @ 2021-11-29 08:19 进击的davis 阅读(231) 评论(0) 推荐(0)

0063-不同路径
摘要:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 网格中的障碍物和空位置分别用 1 和 0 阅读全文

posted @ 2021-11-28 23:03 进击的davis 阅读(56) 评论(0) 推荐(0)

0062-不同路径
摘要:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示例 1: 输入:m = 3, n = 7 输出:28 示例 2: 输入:m 阅读全文

posted @ 2021-11-28 22:37 进击的davis 阅读(45) 评论(0) 推荐(0)

0746-使用最小花费爬楼梯
摘要:数组的每个下标作为一个阶梯,第 i 个阶梯对应着一个非负数的体力花费值 cost[i](下标从 0 开始)。 每当你爬上一个阶梯你都要花费对应的体力值,一旦支付了相应的体力值,你就可以选择向上爬一个阶梯或者爬两个阶梯。 请你找出达到楼层顶部的最低花费。在开始时,你可以选择从下标为 0 或 1 的元素 阅读全文

posted @ 2021-11-28 22:00 进击的davis 阅读(38) 评论(0) 推荐(0)

0070-爬楼梯
摘要:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1 阶 + 1 阶 2 阶 示例 2: 输入: 3 输出: 3 解释: 有三种 阅读全文

posted @ 2021-11-27 22:40 进击的davis 阅读(111) 评论(0) 推荐(0)

0509-斐波那契数
摘要:斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0,F(1) = 1 F(n) = F(n - 1) + F(n - 2),其中 n > 1 给你 n ,请计算 F(n) 。 示例 1: 输 阅读全文

posted @ 2021-11-27 21:54 进击的davis 阅读(140) 评论(0) 推荐(0)

0649-Dota2 参议院
摘要:Dota2 的世界里有两个阵营:Radiant(天辉)和 Dire(夜魇) Dota2 参议院由来自两派的参议员组成。现在参议院希望对一个 Dota2 游戏里的改变作出决定。他们以一个基于轮为过程的投票进行。在每一轮中,每一位参议员都可以行使两项权利中的一项: 禁止一名参议员的权利: 参议员可以让另 阅读全文

posted @ 2021-11-27 17:51 进击的davis 阅读(143) 评论(0) 推荐(0)

0134-加油站
摘要:在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。 说 阅读全文

posted @ 2021-11-27 12:18 进击的davis 阅读(86) 评论(0) 推荐(0)

0053-最大子序和
摘要:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。 示例 2: 输入:nums = [1] 输出 阅读全文

posted @ 2021-11-26 22:30 进击的davis 阅读(40) 评论(0) 推荐(0)

0056-合并区间
摘要:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。 示例 1: 输入:intervals = [[1,3],[2,6],[8,10],[ 阅读全文

posted @ 2021-11-26 22:03 进击的davis 阅读(60) 评论(0) 推荐(0)

0763-划分子母区间
摘要:字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。 示例: 输入:S = "ababcbacadefegdehijhklij" 输出:[9,7,8] 解释: 划分结果为 "ababcbaca", "defegde 阅读全文

posted @ 2021-11-26 21:43 进击的davis 阅读(52) 评论(0) 推荐(0)

0435-无重叠区间
摘要:给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。 注意: 可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。 示例 1: 输入: [ [1,2], [2,3], [3,4], [1,3] ] 输出: 1 解释: 移除 [1 阅读全文

posted @ 2021-11-26 21:20 进击的davis 阅读(64) 评论(0) 推荐(0)

0452-用最少数量的箭引爆气球
摘要:在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。 一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结 阅读全文

posted @ 2021-11-26 08:29 进击的davis 阅读(66) 评论(0) 推荐(0)

0045-跳跃游戏II
摘要:给你一个非负整数数组 nums ,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 假设你总是可以到达数组的最后一个位置。 示例 1: 输入: nums = [2,3,1,1,4] 输出: 2 解释: 跳到最后一个 阅读全文

posted @ 2021-11-25 23:15 进击的davis 阅读(48) 评论(0) 推荐(0)

0055-跳跃游戏
摘要:给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标。 示例 1: 输入:nums = [2,3,1,1,4] 输出:true 解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 阅读全文

posted @ 2021-11-25 22:50 进击的davis 阅读(65) 评论(0) 推荐(0)

0406-根据身高重建队列
摘要:假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。 请你重新构造并返回输入数组 people 所表示的队列。返回的队列应 阅读全文

posted @ 2021-11-25 22:19 进击的davis 阅读(57) 评论(0) 推荐(0)

0135-分发糖果
摘要:老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。 你需要按照以下要求,帮助老师给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。 评分更高的孩子必须比他两侧的邻位孩子获得更多的糖果。 那么这样下来,老师至少需要准备多少颗糖果呢? 示例 1: 输入: 阅读全文

posted @ 2021-11-25 21:46 进击的davis 阅读(36) 评论(0) 推荐(0)

0714-买卖股票的最佳时机含手续费
摘要:给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;整数 fee 代表了交易股票的手续费用。 你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。 返回获得利润的最大值。 注意:这里的一笔交易指买入持有并卖 阅读全文

posted @ 2021-11-25 08:26 进击的davis 阅读(58) 评论(0) 推荐(0)

0121-买卖股票最佳时机
摘要:给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 阅读全文

posted @ 2021-11-24 23:23 进击的davis 阅读(70) 评论(0) 推荐(0)

0122-买卖股票的最佳时机II
摘要:给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: prices = [7,1, 阅读全文

posted @ 2021-11-24 23:08 进击的davis 阅读(34) 评论(0) 推荐(0)

0738-单调递增的数字
摘要:给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。 (当且仅当每个相邻位数上的数字 x 和 y 满足 x ⇐ y 时,我们称这个整数是单调递增的。) 示例 1: 输入: N = 10 输出: 9 示例 2: 输入: N = 1234 输出: 1 阅读全文

posted @ 2021-11-24 23:03 进击的davis 阅读(60) 评论(0) 推荐(0)

0376-摆动序列
摘要:如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为 摆动序列 。第一个差(如果存在的话)可能是正数或负数。仅有一个元素或者含两个不等元素的序列也视作摆动序列。 例如, [1, 7, 4, 9, 2, 5] 是一个 摆动序列 ,因为差值 (6, -3, 5, -7, 3) 是正负交替出现的 阅读全文

posted @ 2021-11-24 21:50 进击的davis 阅读(68) 评论(0) 推荐(0)

0860-柠檬水找零
摘要:在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。 每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。 注意,一开始你手头没有任何零钱。 给你 阅读全文

posted @ 2021-11-24 08:32 进击的davis 阅读(62) 评论(0) 推荐(0)

1005-K 次取反后最大化的数组和
摘要:给定一个整数数组 A,我们只能用以下方法修改该数组:我们选择某个索引 i 并将 A[i] 替换为 -A[i],然后总共重复这个过程 K 次。(我们可以多次选择同一个索引 i。) 以这种方式修改数组后,返回数组可能的最大和。 示例 1: 输入:A = [4,2,3], K = 1 输出:5 解释:选择 阅读全文

posted @ 2021-11-24 08:03 进击的davis 阅读(37) 评论(0) 推荐(0)

0455-分发饼干
摘要:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得 阅读全文

posted @ 2021-11-23 23:26 进击的davis 阅读(33) 评论(0) 推荐(0)

0332-重新安排行程
摘要:给你一份航线列表 tickets ,其中 tickets[i] = [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 开始。如果存在多种有效的行程,请你按字典排序返回最小的行 阅读全文

posted @ 2021-11-23 22:42 进击的davis 阅读(70) 评论(0) 推荐(0)

0491-递增子序列
摘要:给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。 示例 1: 输入:nums = [4,6,7,7] 输出:[[4,6],[4,6,7] 阅读全文

posted @ 2021-11-23 08:17 进击的davis 阅读(37) 评论(0) 推荐(0)

0037-解数独
摘要:编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图) 数独部分空格内已填入了数字,空白格用 '.' 表示。 示例: 输入: 阅读全文

posted @ 2021-11-22 22:57 进击的davis 阅读(120) 评论(0) 推荐(0)

0051-N皇后
摘要:n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。 示例 1: 输入:n = 阅读全文

posted @ 2021-11-22 22:22 进击的davis 阅读(48) 评论(0) 推荐(0)

0047-全排列II
摘要:给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums = [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1,1]] 示例 2: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2 阅读全文

posted @ 2021-11-22 21:39 进击的davis 阅读(40) 评论(0) 推荐(0)

python 实现JWT
摘要:1.JWT概念 JSON Web Token - 在Web应用间安全地传递信息 八幅漫画理解使用JSON Web Token设计单点登录系统 2.python实现JWT python 实现JWT-直接用pyjwt包 Python JWT的整体实现过程-造轮子 python2.7实现 py2环境下调用 阅读全文

posted @ 2021-11-22 11:24 进击的davis 阅读(341) 评论(0) 推荐(0)

028-实现strStr()
摘要:实现 strStr() 函数。 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。 https://leetcode-cn.com/problems/implement- 阅读全文

posted @ 2021-11-22 09:51 进击的davis 阅读(39) 评论(0) 推荐(0)

0046-全排列
摘要:给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 示例 2: 输入:nums = [0,1] 输 阅读全文

posted @ 2021-11-22 08:22 进击的davis 阅读(43) 评论(0) 推荐(0)

0090-子集II
摘要:给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。 示例 1: 输入:nums = [1,2,2] 输出:[[],[1],[1,2],[1,2,2],[2],[2,2]] 示例 2: 输入 阅读全文

posted @ 2021-11-21 23:05 进击的davis 阅读(52) 评论(0) 推荐(0)

0078-子集
摘要:给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] 示例 2 阅读全文

posted @ 2021-11-21 22:48 进击的davis 阅读(105) 评论(0) 推荐(0)

0093-复原IP地址
摘要:有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。 例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312" 和 "192.168@ 阅读全文

posted @ 2021-11-21 22:31 进击的davis 阅读(17) 评论(0) 推荐(0)

0131-分割回文串
摘要:给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s = "aab" 输出:[["a","a","b"],["aa","b"]] 示例 2: 输入:s = "a" 输出:[["a"]] 阅读全文

posted @ 2021-11-21 21:38 进击的davis 阅读(48) 评论(0) 推荐(0)

0216.-组合总和 III
摘要:找出所有相加之和为 n 的 k 个数的组合。组合中只允许含有 1 - 9 的正整数,并且每种组合中不存在重复的数字。 说明: 所有数字都是正整数。 解集不能包含重复的组合。 示例 1: 输入: k = 3, n = 7 输出: [[1,2,4]] 示例 2: 输入: k = 3, n = 9 输出: 阅读全文

posted @ 2021-11-21 21:07 进击的davis 阅读(29) 评论(0) 推荐(0)

0040-组合总和II
摘要:给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用一次。 注意:解集不能包含重复的组合。 示例 1: 输入: candidates = [10,1,2,7, 阅读全文

posted @ 2021-11-21 17:56 进击的davis 阅读(18) 评论(0) 推荐(0)

0039-组合总和
摘要:给定一个无重复元素的正整数数组 candidates 和一个正整数 target ,找出 candidates 中所有可以使数字和为目标数 target 的唯一组合。 candidates 中的数字可以无限制重复被选取。如果至少一个所选数字数量不同,则两种组合是唯一的。 对于给定的输入,保证和为 t 阅读全文

posted @ 2021-11-21 17:18 进击的davis 阅读(46) 评论(0) 推荐(0)

0017-电话号码的字母组合
摘要:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = "23" 输出:["ad","ae","af","bd","be","bf","cd","ce" 阅读全文

posted @ 2021-11-21 16:06 进击的davis 阅读(89) 评论(0) 推荐(0)

0077-组合
摘要:给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 示例 2: 输入:n = 1, k = 1 阅读全文

posted @ 2021-11-21 15:19 进击的davis 阅读(282) 评论(0) 推荐(0)

1365-有多少小于当前数字的数字
摘要:给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。 换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。 以数组形式返回答案。 示例 1: 输入:nums = [8, 阅读全文

posted @ 2021-11-20 23:43 进击的davis 阅读(70) 评论(0) 推荐(0)

0129-求根节点到叶节点数字之和
摘要:给你一个二叉树的根节点 root ,树中每个节点都存放有一个 0 到 9 之间的数字。 每条从根节点到叶节点的路径都代表一个数字: 例如,从根节点到叶节点的路径 1 → 2 → 3 表示数字 123 。 计算从根节点到叶节点生成的 所有数字之和 。 叶节点 是指没有子节点的节点。 示例 1: 输入: 阅读全文

posted @ 2021-11-20 23:11 进击的davis 阅读(50) 评论(0) 推荐(0)

1382-二叉搜索树变平衡树
摘要:给你一棵二叉搜索树,请你返回一棵 平衡后 的二叉搜索树,新生成的树应该与原来的树有着相同的节点值。 如果一棵二叉搜索树中,每个节点的两棵子树高度差不超过 1 ,我们就称这棵二叉搜索树是 平衡的 。 如果有多种构造方法,请你返回任意一种。 示例: 输入:root = [1,null,2,null,3, 阅读全文

posted @ 2021-11-20 22:53 进击的davis 阅读(50) 评论(0) 推荐(0)

0100-相同的树
摘要:给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p = [1,2,3], q = [1,2,3] 输出:true 示例 2: 输入:p = [1,2], q = [1,null,2] 输 阅读全文

posted @ 2021-11-20 18:18 进击的davis 阅读(107) 评论(0) 推荐(0)

0236-二叉树的最近公共祖先
摘要:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 示例 1: 输入:root = [3,5,1,6,2 阅读全文

posted @ 2021-11-20 13:18 进击的davis 阅读(46) 评论(0) 推荐(0)

0235-二叉搜索树的最近公共祖先
摘要:给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉搜索树: root = [6, 阅读全文

posted @ 2021-11-20 12:05 进击的davis 阅读(46) 评论(0) 推荐(0)

0108-有序数组转为二叉搜索树
摘要:给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。 示例 1: 输入:nums = [-10,-3,0,5,9] 输出:[0,-3,9,-10,null,5] 阅读全文

posted @ 2021-11-20 10:06 进击的davis 阅读(54) 评论(0) 推荐(0)

0669-修剪二叉搜索树
摘要:给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树不应该改变保留在树中的元素的相对结构(即,如果没有被移除,原有的父代子代关系都应当保留)。 可以证明,存在唯一的答案。 所以结果应当返回修剪好的二叉 阅读全文

posted @ 2021-11-19 23:48 进击的davis 阅读(70) 评论(0) 推荐(0)

0450-删除二叉搜索树中的节点
摘要:给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。 一般来说,删除节点可分为两个步骤: 首先找到需要删除的节点; 如果找到了,删除它。 示例 1: 输入:root = [5,3,6 阅读全文

posted @ 2021-11-19 23:07 进击的davis 阅读(96) 评论(0) 推荐(0)

0701-二叉搜索树的插入操作
摘要:给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同。 注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回 任意有效的结果 。 示例 1: 输入:root 阅读全文

posted @ 2021-11-19 22:18 进击的davis 阅读(124) 评论(0) 推荐(0)

0538-二叉搜索树转为累加树
摘要:给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。 提醒一下,二叉搜索树满足下列约束条件: 节点的左子树仅包含键 小于 节点键的节点。 节点的右子树仅包含键 大于 阅读全文

posted @ 2021-11-19 08:30 进击的davis 阅读(45) 评论(0) 推荐(0)

0530-二叉搜索树的最小绝对差
摘要:给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数,其数值等于两值之差的绝对值。 示例 1: 输入:root = [4,2,6,1,3] 输出:1 示例 2: 输入:root = [1,0,48,null,null,12,49] 输出:1 提示: 树 阅读全文

posted @ 2021-11-18 23:16 进击的davis 阅读(47) 评论(0) 推荐(0)

0501-二叉搜索树中的众数
摘要:给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。 假定 BST 有如下定义: 结点左子树中所含结点的值小于等于当前结点的值 结点右子树中所含结点的值大于等于当前结点的值 左子树和右子树都是二叉搜索树 例如: 给定 BST [1,null,2,2], 返回[2 阅读全文

posted @ 2021-11-18 08:44 进击的davis 阅读(52) 评论(0) 推荐(0)

0098-验证二叉搜索树
摘要:给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例 1: 输入:root = [2,1,3] 输出:true 示例 2 阅读全文

posted @ 2021-11-17 23:05 进击的davis 阅读(47) 评论(0) 推荐(0)

0700-二叉搜索树中的搜索
摘要:给定二叉搜索树(BST)的根节点和一个值。 你需要在BST中找到节点值等于给定值的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 NULL。 例如, 给定二叉搜索树: 和值: 2 你应该返回如下子树: 在上述示例中,如果要找的值是 5,但因为没有节点值为 5,我们应该返回 NULL。 来源 阅读全文

posted @ 2021-11-17 21:54 进击的davis 阅读(17) 评论(0) 推荐(0)

0617.-合并二叉树
摘要:给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。 示例 1: 注意: 合并必须从两个树的根节点开始。 来 阅读全文

posted @ 2021-11-17 08:42 进击的davis 阅读(84) 评论(0) 推荐(0)

0654-最大二叉树
摘要:给定一个不含重复元素的整数数组 nums 。一个以此数组直接递归构建的 最大二叉树 定义如下: 1.二叉树的根是数组 nums 中的最大元素。 2.左子树是通过数组中 最大值左边部分 递归构造出的最大二叉树。 3.右子树是通过数组中 最大值右边部分 递归构造出的最大二叉树。 返回有给定数组 nums 阅读全文

posted @ 2021-11-16 22:56 进击的davis 阅读(86) 评论(0) 推荐(0)

0106-105-从中序与后序遍历序列中构造二叉树
摘要:根据一棵树的中序遍历与后序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 返回如下的二叉树: 来源:力扣(LeetCode) 链接:https://leetc 阅读全文

posted @ 2021-11-16 22:19 进击的davis 阅读(34) 评论(0) 推荐(0)

0226-翻转二叉树
摘要:翻转一棵二叉树。 示例: 输入: 输出: 备注: 这个问题是受到 Max Howell 的 原问题 启发的 : 谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。 来源:力扣(LeetCode) 链接:https://leet 阅读全文

posted @ 2021-11-16 08:27 进击的davis 阅读(52) 评论(0) 推荐(0)

0112-路径之和 & 0113-所有路径之和
摘要:给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [5,4,8,11,null,13,4,7,2,nu 阅读全文

posted @ 2021-11-15 23:25 进击的davis 阅读(45) 评论(0) 推荐(0)

0513-找树左下角的值
摘要:给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root = [2,1,3] 输出: 1 示例 2: 输入: [1,2,3,4,null,5,6,null,null,7] 输出: 7 提示: 二叉树的节点个数的范围是 阅读全文

posted @ 2021-11-15 21:47 进击的davis 阅读(46) 评论(0) 推荐(0)

python获取系统相关信息命令
摘要:platform模块提供了底层系统平台的相关信息 >>> import platform >>> platform.architecture() ('64bit', '') # 操作系统架构 >>> platform.system() 'Linux' # 操作系统 >>> platform.vers 阅读全文

posted @ 2021-11-15 11:29 进击的davis 阅读(1413) 评论(0) 推荐(0)

0404-左子叶之和
摘要:计算给定二叉树的所有左叶子之和。 示例: 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/sum-of-left-leaves 参考: https://leetcode-cn. 阅读全文

posted @ 2021-11-15 08:34 进击的davis 阅读(64) 评论(0) 推荐(0)

0257-二叉树的所有路径
摘要:给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [1,2,3,null,5] 输出:["1->2->5","1->3"] 示例 2: 输入:root = [1] 输出:["1"] 提示: 树中节 阅读全文

posted @ 2021-11-14 23:26 进击的davis 阅读(53) 评论(0) 推荐(0)

0110-平衡二叉树
摘要:给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:true 示例 2: 输入:root = [1,2,2,3,3, 阅读全文

posted @ 2021-11-14 22:43 进击的davis 阅读(41) 评论(0) 推荐(0)

0222.-完全二叉树的节点个数
摘要:给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。 示例 1: 输入:root = 阅读全文

posted @ 2021-11-14 21:44 进击的davis 阅读(77) 评论(0) 推荐(0)

0101-对称二叉树
摘要:给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 进阶: 你可以运用递归和迭代两种方法解决这个问题吗? 来源:力扣(LeetCode) 链接:https://leetcod 阅读全文

posted @ 2021-11-14 16:41 进击的davis 阅读(32) 评论(0) 推荐(0)

0117-填充每个节点的下一个右侧节点指针 II
摘要:给定一个二叉树 struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。 初始状态下,所有 next 指针 阅读全文

posted @ 2021-11-14 13:03 进击的davis 阅读(39) 评论(0) 推荐(0)

0116-填充每个节点的下一个右侧节点指针
摘要:给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧 阅读全文

posted @ 2021-11-14 11:48 进击的davis 阅读(37) 评论(0) 推荐(0)

0111-二叉树的最小深度
摘要:给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:2 示例 2: 输入:root = [2,null,3,null,4,null,5, 阅读全文

posted @ 2021-11-13 23:22 进击的davis 阅读(47) 评论(0) 推荐(0)

0104-二叉树的最大深度
摘要:给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / 9 20 / 15 7 返回它的最大深度 3 。 来源:力扣(LeetCode) 链接:h 阅读全文

posted @ 2021-11-13 23:04 进击的davis 阅读(48) 评论(0) 推荐(0)

0515-在每个树行中找到最大值
摘要:给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值。 示例1: 输入: root = [1,3,2,5,3,null,9] 输出: [1,3,9] 解释: 1 / 3 2 / \ \ 5 3 9 示例2: 输入: root = [1,2,3] 输出: [1,3] 解释: 1 / 2 阅读全文

posted @ 2021-11-13 22:48 进击的davis 阅读(42) 评论(0) 推荐(0)

0429-N叉树的层序遍历
摘要:给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。 树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。 示例 1: 输入:root = [1,null,3,2,4,null,5,6] 输出:[[1],[3,2,4],[5,6]] 示例 2: 输入:root 阅读全文

posted @ 2021-11-13 22:33 进击的davis 阅读(167) 评论(0) 推荐(0)

0637-二叉树的层平均值
摘要:给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。 示例 1: 输入: 3 / 9 20 / 15 7 输出:[3, 14.5, 11] 解释: 第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。 提示: 节点值的范围在32位有符 阅读全文

posted @ 2021-11-13 22:16 进击的davis 阅读(78) 评论(0) 推荐(0)

0199-二叉树的右视图
摘要:给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [] 输出: [] 阅读全文

posted @ 2021-11-13 21:41 进击的davis 阅读(53) 评论(0) 推荐(0)

0107-二叉树的层序遍历II-
摘要:给定一个二叉树,返回其节点值自底向上的层序遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 例如: 给定二叉树 [3,9,20,null,null,15,7], 3 / 9 20 / 15 7 返回其自底向上的层序遍历为: [ [15,7], [9,20], [3] ] 来源:力扣 阅读全文

posted @ 2021-11-13 21:16 进击的davis 阅读(51) 评论(0) 推荐(0)

0102-leetcode算法实现之二叉树层序遍历-binary-tree-level-order-traversal-python&golang实现
摘要:给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例: 二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层序遍历结果: [ [3], [9,20], [15,7] ] 来源:力扣(LeetCode) 阅读全文

posted @ 2021-11-13 18:04 进击的davis 阅读(58) 评论(0) 推荐(0)

二叉树的深度优先遍历(DFS)及广度优先遍历(BFS)
摘要:1.深度优先-DFS 1.1 golang实现 package main import "container/list" // 二叉树深度优先遍历 递归 && 迭代 // ************递归遍历********** // 前序遍历 NLR 根左右 func preorderRecur(ro 阅读全文

posted @ 2021-11-11 23:47 进击的davis 阅读(409) 评论(0) 推荐(0)

0145-leetcode算法实现之二叉树的后续遍历-binary-tree-postorder-traversal-python&golang实现
摘要:给定一个二叉树,返回它的 后序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-tr 阅读全文

posted @ 2021-11-11 22:32 进击的davis 阅读(67) 评论(0) 推荐(0)

0094-leetcode算法实现之二叉树中序遍历-binary-tree-inorder-traversal-python&golang实现
摘要:给定一个二叉树的根节点 root ,返回它的 中序 遍历。 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] 示例 2: 输入:root = [] 输出:[] 示例 3: 输入:root = [1] 输出:[1] 示例 4: 输入:root = [1,2] 输出:[2, 阅读全文

posted @ 2021-11-11 22:30 进击的davis 阅读(59) 评论(0) 推荐(0)

0144-leetcode算法实现之二叉树的前序遍历-binary-tree-preorder-traversal-python&golang实现
摘要:给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root = [1,null,2,3] 输出:[1,2,3] 示例 2: 输入:root = [] 输出:[] 示例 3: 输入:root = [1] 输出:[1] 示例 4: 输入:root = [1,2] 输出:[1 阅读全文

posted @ 2021-11-10 22:09 进击的davis 阅读(59) 评论(0) 推荐(0)

0347-前K个高频元素
摘要:给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 提示: 1 ⇐ 阅读全文

posted @ 2021-11-10 07:25 进击的davis 阅读(117) 评论(0) 推荐(0)

0239-leetcode算法实现之滑动窗口最大值-sliding-window-maximum-python&golang实现
摘要:给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 示例 1: 输入:nums = [1,3,-1,-3,5,3,6,7], k = 3 输出:[3,3,5,5,6, 阅读全文

posted @ 2021-11-10 07:23 进击的davis 阅读(99) 评论(0) 推荐(0)

0150-leetcode算法实现之逆波兰表达式-evaluate-reverse-polish-notation-python&golang实现
摘要:根据 逆波兰表示法,求表达式的值。 有效的算符包括 +、-、*、/ 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。 说明: 整数除法只保留整数部分。 给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。 示例 1: 输入:tokens = ["2","1" 阅读全文

posted @ 2021-11-09 22:16 进击的davis 阅读(69) 评论(0) 推荐(0)

1047-leetcode算法实现之删除字符串的所有相邻的重复字符-remove-all-adjacent-duplicates-in-string-python&golang实现
摘要:给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。 在 S 上反复执行重复项删除操作,直到无法继续删除。 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。 示例: 输入:"abbaca" 输出:"ca" 解释: 例如,在 "abbaca" 中,我们可以删 阅读全文

posted @ 2021-11-09 21:11 进击的davis 阅读(90) 评论(0) 推荐(0)

pstack 追踪进程-转
摘要:转: https://wangchujiang.com/linux-command/c/pstack.html pstack 显示每个进程的栈跟踪 补充说明 pstack命令 可显示每个进程的栈跟踪。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位 阅读全文

posted @ 2021-11-09 10:21 进击的davis 阅读(141) 评论(0) 推荐(0)

0225-leetcode算法实现之用队列实现栈-implement-stack-using-queues-python&golang实现
摘要:请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。 实现 MyStack 类: void push(int x) 将元素 x 压入栈顶。 int pop() 移除并返回栈顶元素。 int top() 返回栈顶元素。 boole 阅读全文

posted @ 2021-11-09 08:14 进击的davis 阅读(36) 评论(0) 推荐(0)

0020-leetcode算法实现之有效括号-valid-parentheses-python&golang实现
摘要:给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 示例 1: 输入:s = "()" 输出:true 示例 2: 输入:s = "()[]{}" 输出:true 阅读全文

posted @ 2021-11-08 23:05 进击的davis 阅读(61) 评论(0) 推荐(0)

0232-leetcode算法实现-用栈实现队列-implement-queue-using-stacks-python&golang实现
摘要:请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty): 实现 MyQueue 类: void push(int x) 将元素 x 推到队列的末尾 int pop() 从队列的开头移除并返回元素 int peek() 返回队列开头的元素 boo 阅读全文

posted @ 2021-11-08 08:00 进击的davis 阅读(48) 评论(0) 推荐(0)

0454-leetcode算法实现之四数之和II-4sum-ii-python&golang实现
摘要:给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: 0 ⇐ i, j, k, l < n nums1[i] + nums2[j] + nums3[k] + nums4[l] == 0 示例 1: 输入: 阅读全文

posted @ 2021-11-07 22:52 进击的davis 阅读(59) 评论(0) 推荐(0)

0383-leetcode算法实现之赎金信-ransom-note-python&golang实现
摘要:给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成。如果可以构成,返回 true ;否则返回 false。 (题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表 阅读全文

posted @ 2021-11-07 22:12 进击的davis 阅读(73) 评论(0) 推荐(0)

0202-leetcode算法实现之快乐数-happy-number-python&golang实现
摘要:编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。 如果 可以变为 1,那么这个数就是快乐数。 如果 n 是快乐数就返回 true ;不是,则返回 阅读全文

posted @ 2021-11-07 21:41 进击的davis 阅读(136) 评论(0) 推荐(0)

1002-leetcode算法实现之查找共用字符-find-common-characters-python&golang实现
摘要:给你一个字符串数组 words ,请你找出所有在 words 的每个字符串中都出现的共用字符( 包括重复字符),并以数组形式返回。你可以按 任意顺序 返回答案。 示例 1: 输入:words = ["bella","label","roller"] 输出:["e","l","l"] 示例 2: 输入 阅读全文

posted @ 2021-11-06 09:58 进击的davis 阅读(145) 评论(0) 推荐(0)

uwsgi的使用示例+django(监听队列长度)
摘要:-https://docs.djangoproject.com/zh-hans/3.2/howto/deployment/wsgi/uwsgi/ https://uwsgi-docs-cn.readthedocs.io/zh_CN/latest/WSGIquickstart.html 监听队列最大长 阅读全文

posted @ 2021-11-05 11:03 进击的davis 阅读(346) 评论(0) 推荐(0)

0024-leetcode-两两交换链表中的节点-swap-nodes-in-pairs-python&golang
摘要:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例 1: 输入:head = [1,2,3,4] 输出:[2,1,4,3] 示例 2: 输入:head = [] 输出:[] 示例 3: 输入:head = [1] 输出:[ 阅读全文

posted @ 2021-11-04 23:38 进击的davis 阅读(56) 评论(0) 推荐(0)

0021-leetcode算法实现之合并两个有序链表-merge-two-sorted-lists-python&golang
摘要:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 = [], l2 = [] 输出:[] 示例 3: 输入:l1 = [] 阅读全文

posted @ 2021-11-04 22:30 进击的davis 阅读(84) 评论(0) 推荐(0)

线上业务django-uwsgi启动的服务日志错乱缺失
摘要:参考: https://www.coder.work/article/378920 >>> uwsgi多进程托管日志错乱问题 多进程不安全导致 https://stackoverflow.com/questions/9206802/some-djangos-logs-are-missing-when 阅读全文

posted @ 2021-11-04 18:33 进击的davis 阅读(410) 评论(0) 推荐(0)

Elasticsearch 学习之概览
摘要:elasticsearch工作原理 elasticsearch 工作原理 elasticsearch索引原理 elasticsearch全文检索总结 Elasticsearch 技术分析: 分布式工作原理 ES读写数据的工作原理 elasticseach集群 Elasticsearch集群角色类型n 阅读全文

posted @ 2021-11-04 11:40 进击的davis 阅读(60) 评论(0) 推荐(0)

0092-leetcode算法实现之反转链表II-reverseLinkedListII-python&golang实现
摘要:给你单链表的头指针 head 和两个整数 left 和 right ,其中 left ⇐ right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 示例 1: 输入:head = [1,2,3,4,5], left = 2, right = 4 输出:[1,4, 阅读全文

posted @ 2021-11-04 08:35 进击的davis 阅读(79) 评论(0) 推荐(0)

0148-leetcode算法实现之排序链表-sortLinkedList-python&golang实现
摘要:给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 进阶: 你可以在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗? 示例 1: 输入:head = [4,2,1,3] 输出:[1,2,3,4] 示例 2: 输入:head = [-1,5,3,4,0 阅读全文

posted @ 2021-11-04 08:01 进击的davis 阅读(157) 评论(0) 推荐(0)

0019-leetcode算法实现之删除链表倒数第n个节点-remove-nth-node-from-end-of-list-python&golang实现
摘要:给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 进阶:你能尝试使用一趟扫描实现吗? 示例 1: 输入:head = [1,2,3,4,5], n = 2 输出:[1,2,3,5] 示例 2: 输入:head = [1], n = 1 输出:[] 示例 3: 输入:head = [ 阅读全文

posted @ 2021-11-04 07:46 进击的davis 阅读(47) 评论(0) 推荐(0)

0142-leetcode算法实现环形链表II-linked-list-cycle-II-python&golang实现
摘要:给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。 说明:不 阅读全文

posted @ 2021-11-04 00:00 进击的davis 阅读(42) 评论(0) 推荐(0)

0141-leetcode算法实现之环形链表-linked-list-cycle-python&golang实现
摘要:给定一个链表,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅 阅读全文

posted @ 2021-11-03 23:03 进击的davis 阅读(40) 评论(0) 推荐(0)

0160-leetcode算法实现之相交链表intersection-of-two-linked-lists-python&golang实现
摘要:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 示例 1: 输入:interse 阅读全文

posted @ 2021-11-03 22:36 进击的davis 阅读(42) 评论(0) 推荐(0)

elasticsearch全文检索总结
摘要:转载: https://www.cnblogs.com/jajian/p/11223992.html elasticsearch思维导图(自园友-ReyCG): 生活中的数据 搜索引擎是对数据的检索,所以我们先从生活中的数据说起。 我们生活中的数据总体分为两种:结构化数据 和 非结构化数据。 结构化 阅读全文

posted @ 2021-11-03 16:27 进击的davis 阅读(440) 评论(0) 推荐(0)

elasticsearch索引原理
摘要:转载: https://www.cnblogs.com/jajian/p/10737373.html 前言 创建索引的时候,我们通过Mapping 映射定义好索引的基本结构信息,接下来我们肯定需要往 ES 里面新增业务文档数据了,例如用户,日志等业务数据。新增的业务数据,我们根据 Mapping 来 阅读全文

posted @ 2021-11-03 16:25 进击的davis 阅读(232) 评论(0) 推荐(1)

elasticsearch 性能优化
摘要:转载: https://www.cnblogs.com/jajian/p/10465519.html 硬件选择 Elasticsearch(后文简称 ES)的基础是 Lucene,所有的索引和文档数据是存储在本地的磁盘中,具体的路径可在 ES 的配置文件../config/elasticsearch 阅读全文

posted @ 2021-11-03 16:23 进击的davis 阅读(235) 评论(0) 推荐(0)

Elasticsearch 技术分析: 分布式工作原理
摘要:转载: https://www.cnblogs.com/jajian/p/10176604.html 前言 通过前面章节的了解,我们已经知道 Elasticsearch 是一个实时的分布式搜索分析引擎,它能让你以一个之前从未有过的速度和规模,去探索你的数据。它被用作全文检索、结构化搜索、分析以及这三 阅读全文

posted @ 2021-11-03 15:15 进击的davis 阅读(162) 评论(0) 推荐(0)

elasticsearch:避免es集群的“脑裂”现象
摘要:链接:https://www.jianshu.com/p/2e78d50c1ec9 所谓脑裂问题(类似于精神分裂),就是同一个集群中的不同节点,对于集群的状态有了不一样的理解。 情况描述,通过以下命令查看集群状态: curl -XGET 'es-1:9200/_cluster/health' 发现, 阅读全文

posted @ 2021-11-03 10:31 进击的davis 阅读(1269) 评论(0) 推荐(0)

ElasticSearch 基本概念和配置
摘要:转载参考: https://my.oschina.net/Yumikio/blog/805877 https://www.cnblogs.com/hujihon/p/5656981.html https://cloud.tencent.com/developer/article/1546912 几个 阅读全文

posted @ 2021-11-03 10:13 进击的davis 阅读(233) 评论(0) 推荐(0)

0206-leetcode算法实现-反转链表reverse-linked-list-python&golang实现
摘要:给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入:head = [1,2] 输出:[2,1] 示例 3: 输入:head = [] 输出:[] 提示: 链表中节点的数目范围是 [ 阅读全文

posted @ 2021-11-02 23:32 进击的davis 阅读(51) 评论(0) 推荐(0)

Elasticsearch集群角色类型node.master及node.data
摘要:在Elasticsearch当中,ES分为三种角色:master、data、client。 三种角色由elasticsearch.yml配置文件中的node.master、node.true来控制。 如果不修改elasticsearch的节点角色信息,那么默认就是node.master: true、 阅读全文

posted @ 2021-11-02 17:47 进击的davis 阅读(2689) 评论(0) 推荐(0)

linux cache缓存过大导致内存资源不够用
摘要:当cache缓存占用太大,服务起不来,需要查看清理缓存 查看缓存: free -m 输入运行下面一行: echo 3 > /proc/sys/vm/drop_caches 释放缓存: # 释放缓存区内存的方法 1)清理pagecache(页面缓存) # echo 1 > /proc/sys/vm/d 阅读全文

posted @ 2021-11-02 10:17 进击的davis 阅读(876) 评论(0) 推荐(0)

helm v3 调试 k8s elasticsearch集群(5)
摘要:链接:helm v3部署es集群 上次我们已经通过helm部署了es的release,es集群是起来了,功能也正常,这次我们模拟测试,简单验证es的功能与性能。 测试主要分: 节点宕机 存储不足 待完善 本次测试,将master设replicas为3,data设置为3,client设置为2,因为只需 阅读全文

posted @ 2021-11-01 11:30 进击的davis 阅读(364) 评论(0) 推荐(0)

导航