- 博客(534)
- 资源 (7)
- 收藏
- 关注
原创 剑指 Offer 33. 二叉搜索树的后序遍历序列
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。参考以下这颗二叉搜索树: 5 / \ 2 6 / \1 3示例 1:输入: [1,6,3,2,5]输出: false示例 2:输入: [1,3,2,6,5]输出: true来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/er-cha-s...
2020-10-09 23:35:56
169
原创 剑指 Offer 32 - III. 从上到下打印二叉树 III
请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。例如:给定二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [20,9], [15,7]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/cong...
2020-10-09 22:49:36
113
原创 Express 4接受POST请求的body数据
第一种方式:// AJAX请求$.ajax({ type: 'POST', url: 'http://127.0.0.1:3000/', data: JSON.stringify({ username: 'xt', age: 15 }), contentType: 'application/json'
2020-10-04 09:28:41
1825
原创 987. 二叉树的垂序遍历
给定二叉树,按垂序遍历返回其结点值。对位于(X, Y)的每个结点而言,其左右子结点分别位于(X-1, Y-1)和(X+1, Y-1)。把一条垂线从X = -infinity移动到X = +infinity,每当该垂线与结点接触时,我们按从上到下的顺序报告结点的值( Y坐标递减)。如果两个结点位置相同,则首先报告的结点值较小。按X坐标顺序返回非空报告的列表。每个报告都有一个结点值列表。示例 1:输入:[3,9,20,null,null,15,7]输出:[...
2020-09-26 21:11:25
170
原创 18. 四数之和
给定一个包含n 个整数的数组nums和一个目标值target,判断nums中是否存在四个元素 a,b,c和 d,使得a + b + c + d的值与target相等?找出所有满足条件且不重复的四元组。注意:答案中不可以包含重复的四元组。示例:给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。满足要求的四元组集合为:[ [-1, 0, 0, 1], [-2, -1, 1, 2], [-2, 0, 0, 2]...
2020-09-26 14:43:33
117
原创 1361. 验证二叉树
二叉树上有 n个节点,按从0到 n - 1编号,其中节点i的两个子节点分别是leftChild[i]和rightChild[i]。只有 所有 节点能够形成且 只 形成 一颗有效的二叉树时,返回true;否则返回 false。如果节点i没有左子节点,那么leftChild[i]就等于-1。右子节点也符合该规则。注意:节点没有值,本问题中仅仅使用节点编号。示例 1:输入:n = 4, leftChild = [1,-1,3,-1], rightChild...
2020-09-25 19:02:06
173
原创 373. 查找和最小的K对数字
给定两个以升序排列的整形数组 nums1 和 nums2, 以及一个整数 k。定义一对值(u,v),其中第一个元素来自nums1,第二个元素来自 nums2。找到和最小的 k 对数字(u1,v1), (u2,v2) ... (uk,vk)。示例 1:输入: nums1 = [1,7,11], nums2 = [2,4,6], k = 3输出: [1,2],[1,4],[1,6]解释: 返回序列中的前 3 对数: [1,2],[1,4],[1,6],[7,2],[7,4],...
2020-09-25 17:16:06
205
原创 [编程题]多多的魔术盒子
时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 256M,其他语言512M多多鸡有N个魔术盒子(编号1~N),其中编号为i的盒子里有i个球。多多鸡让皮皮虾每次选择一个数字X(1 <= X <= N),多多鸡就会把球数量大于等于X个的盒子里的球减少X个。通过观察,皮皮虾已经掌握了其中的奥秘,并且发现只要通过一定的操作顺序,可以用最少的次数将所有盒子里的球变没。那么请问聪明的你,是否已经知道了应该如何操作呢?输入描述:第一行,有1个整数T,表示测..
2020-09-24 10:17:48
2366
原创 剑指 Offer 32 - III. 从上到下打印二叉树 III
请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。例如:给定二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [20,9], [15,7]]提示:节点总数 <= 1000通过次数35,695提交次数61,073/** * Def...
2020-09-06 21:21:56
106
1
原创 429. N叉树的层序遍历
给定一个 N 叉树,返回其节点值的层序遍历。 (即从左到右,逐层遍历)。例如,给定一个3叉树:返回其层序遍历:[ [1], [3,2,4], [5,6]]说明:树的深度不会超过1000。树的节点总数不会超过5000。/** * // Definition for a Node. * function Node(val,children) { * this.val = val; * this.childre...
2020-09-02 21:20:38
124
原创 剑指 Offer 56 - II. 数组中数字出现的次数 II
在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。示例 1:输入:nums = [3,4,3,3]输出:4示例 2:输入:nums = [9,1,7,9,7,9,7]输出:1限制:1 <= nums.length <= 100001 <= nums[i] < 2^31/** * @param {number[]} nums * @return {number} */var sin...
2020-09-02 21:06:37
119
原创 589. N叉树的前序遍历
给定一个 N 叉树,返回其节点值的前序遍历。例如,给定一个3叉树:返回其前序遍历: [1,3,5,6,2,4]。/** * // Definition for a Node. * function Node(val, children) { * this.val = val; * this.children = children; * }; *//** * @param {Node} root * @return {number[]} */v...
2020-09-02 17:19:43
104
原创 面试题 17.14. 最小K个数
设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。示例:输入: arr = [1,3,5,7,2,4,6,8], k = 4输出: [1,2,3,4]提示:0 <= len(arr) <= 1000000 <= k <= min(100000, len(arr))通过次数12,305提交次数22,434/** * @param {number[]} arr * @param {number} k * @return {number[]}
2020-09-02 17:10:13
157
原创 1325. 删除给定值的叶子节点
给你一棵以root为根的二叉树和一个整数target,请你删除所有值为target 的叶子节点 。注意,一旦删除值为target的叶子节点,它的父节点就可能变成叶子节点;如果新叶子节点的值恰好也是target ,那么这个节点也应该被删除。也就是说,你需要重复此过程直到不能继续删除。示例 1:输入:root = [1,2,3,2,null,2,4], target = 2输出:[1,null,3,null,4]解释:上面左边的图中,绿色节点为叶子节点,且它们的值与...
2020-09-01 22:44:05
131
原创 222. 完全二叉树的节点个数
给出一个完全二叉树,求出该树的节点个数。说明:完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~2h个节点。示例:输入: 1 / \ 2 3/ \ /4 5 6输出: 6通过次数31,424提交次数43,652/** * Definition for a binary tree node. * functio...
2020-09-01 21:20:37
103
原创 701. 二叉搜索树中的插入操作
给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 保证原始二叉搜索树中不存在新值。注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回任意有效的结果。例如,给定二叉搜索树: 4 / \ 2 7 / \ 1 3和 插入的值: 5你可以返回这个二叉搜索树: 4 / \ 2 7 ...
2020-09-01 21:06:52
88
原创 145. 二叉树的后序遍历
给定一个二叉树,返回它的 后序遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [3,2,1]进阶:递归算法很简单,你可以通过迭代算法完成吗?/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this...
2020-09-01 09:50:50
81
原创 814. 二叉树剪枝
给定二叉树根结点root,此外树的每个结点的值要么是 0,要么是 1。返回移除了所有不包含 1 的子树的原二叉树。( 节点 X 的子树为 X 本身,以及所有 X 的后代。)示例1:输入: [1,null,0,0,1]输出: [1,null,0,null,1]解释:只有红色节点满足条件“所有不包含 1 的子树”。右图为返回的答案。示例2:输入: [1,0,1,0,0,0,1]输出: [1,null,1,null,1]示例3:输入: [1,1,0,1,1,0,1,...
2020-09-01 09:26:48
79
原创 1305. 两棵二叉搜索树中的所有元素
给你root1 和 root2这两棵二叉搜索树。请你返回一个列表,其中包含两棵树中的所有整数并按 升序 排序。.示例 1:输入:root1 = [2,1,4], root2 = [1,0,3]输出:[0,1,1,2,3,4]示例 2:输入:root1 = [0,-10,10], root2 = [5,1,7,0,2]输出:[-10,0,0,1,2,5,7,10]示例 3:输入:root1 = [], root2 = [5,1,7,0,2]输出:[0,1,2,5,7...
2020-09-01 09:11:26
132
原创 861. 翻转矩阵后的得分
有一个二维矩阵A 其中每个元素的值为0或1。移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 0 都更改为 1,将所有 1 都更改为 0。在做出任意次数的移动后,将该矩阵的每一行都按照二进制数来解释,矩阵的得分就是这些数字的总和。返回尽可能高的分数。示例:输入:[[0,0,1,1],[1,0,1,0],[1,1,0,0]]输出:39解释:转换为 [[1,1,1,1],[1,0,0,1],[1,1,1,1]]0b1111 + 0b1001 + 0b1111...
2020-09-01 09:06:56
100
原创 173. 二叉搜索树迭代器
实现一个二叉搜索树迭代器。你将使用二叉搜索树的根节点初始化迭代器。调用 next() 将返回二叉搜索树中的下一个最小的数。示例:BSTIterator iterator = new BSTIterator(root);iterator.next(); // 返回 3iterator.next(); // 返回 7iterator.hasNext(); // 返回 trueiterator.next(); // 返回 9iterator.hasNext(); //...
2020-09-01 08:29:25
110
原创 ganmao病毒被消灭
链接:https://ac.nowcoder.com/acm/contest/7368/B来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述younik进入校医院大厅,观察到校医院大厅是一个的正方形区域,在这个区域中有多名学生,根据学生的密集程度分为了n*n个小方形区域。此时一个名为ganmao的病毒正处在区域(1,1)位置,ganmao病毒将前往(n,n)位置等待被消灭.
2020-08-30 09:51:56
514
原创 younik要排号
链接:https://ac.nowcoder.com/acm/contest/7368/D来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述Younik挂好号之后,就去找医生了。但是她没想到,看医生居然也要排队!于是younik可怜兮兮地站在大厅里,盯着墙上的显示屏,显示屏会不停地打出名字,如果一个人被叫到但没进去,显示屏可能会叫他很多次。你能告诉younik她是第几.
2020-08-30 09:15:30
281
原创 团日活动
链接:https://ac.nowcoder.com/acm/contest/6840/G来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述 华华和班里的同学共N人一起去校外进行团日活动。到了晚上回家的时候,遇到一处独木桥要过,为了安全起见,华华提议一次只让两名同学过独木桥,已知队伍中n名女生过桥都比较快,单独过桥只需要1分钟。m名男生因为体重较重,过桥的时间比较...
2020-08-28 13:30:45
165
原创 皮皮想拜师
链接:https://ac.nowcoder.com/acm/contest/6840/D来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述传说中乌托邦王国有一棵树,与天同高。但实际上却并非如此,这棵树只有100000米。树上M(1 <= M <=100000)米处住着神仙。有一天,想拜师学艺的皮皮找到你,想让你用魔法把他带到树上的n(1 <= n<=.
2020-08-28 11:00:54
336
原创 炎炎消防队
链接:https://ac.nowcoder.com/acm/contest/6840/I来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288KSpecial Judge, 64bit IO Format: %lld题目描述夏天的重庆格外地炎热,很容易起火。消防士们都全副武装,一旦发生险情就立马赶往救火。森罗是消防队中的一员,他在灭火的过程中突发奇想,如果能用退火的原理求解函数求最小值,那不就可以很容易计算了吗?翌日,森罗来.
2020-08-28 10:11:16
383
原创 爱玩游戏的Tom
链接:https://ac.nowcoder.com/acm/contest/6840/E来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述Tom很喜欢玩游戏,他在电脑上下了《GTA5》和《微软飞行模拟》,对于后者他还丧心病狂的下载了所有地图包,导致他可用空间只有mGM,但他还有几个学校要求安装的软件没有下载,他不能全部放下去,因此只能选择性的安装一部分。现在,我们知道每个学.
2020-08-28 09:56:41
257
原创 标准签到题
链接:https://ac.nowcoder.com/acm/contest/6840/H来源:牛客网题目描述在大家的努力下,终于要进行第一届ACM集训队的选拔赛了,华华和辉辉商议了一下,准备一起给这次比赛出题,那么既然是比赛,为了不难为大家,肯定要有签到题。所以,正如大家所看到的,这道题就是一道签到题。众所周知,在《JOJO的奇妙冒险》中,替身使者空条承太郎最经典的场景莫过于他用替身“欧拉”对手了。由于承太郎的欧拉速度接近光速,计数君阵亡了,于是计数君找到了你,希望让你写一个程序来记.
2020-08-27 22:46:05
2864
1
原创 统计患病人数
链接:https://ac.nowcoder.com/acm/contest/6840/C来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述又是一年冬季,流感病毒在人群中传播,现在写一个程序,统计某公司感染病毒情况。该公司一共有x(1<=x<=10000)个人,他们的编号为0到x-1,现在假设编号为n(0<=n<=x-1)的员工为初始感染者(初始感染者.
2020-08-27 22:36:36
669
原创 不一样的食物链
链接:https://ac.nowcoder.com/acm/contest/6840/A来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述上帝想要创建规则,其中有N个关系,每个关系由狩猎者和猎物组成,均为字符串,若是这N条关系中每个事物都有它的天敌,则说明上帝创造的规则合理,反之不合理。对于合理输出数字1,不合理输出数字0。输入描述:第一行输入为N之后..
2020-08-27 22:23:03
196
原创 面试题 16.21. 交换和
给定两个整数数组,请交换一对数值(每个数组中取一个数值),使得两个数组所有元素的和相等。返回一个数组,第一个元素是第一个数组中要交换的元素,第二个元素是第二个数组中要交换的元素。若有多个答案,返回任意一个均可。若无满足条件的数值,返回空数组。示例:输入: array1 = [4, 1, 2, 1, 1, 2], array2 = [3, 6, 3, 3]输出: [1, 3]示例:输入: array1 = [1, 2, 3], array2 = [4, 5, 6]输出: []提示:
2020-08-27 16:00:56
123
原创 点是否在圆内
给定圆的半径和圆心的 x、y 坐标,写一个在圆中产生均匀随机点的函数randPoint。说明:输入值和输出值都将是浮点数。圆的半径和圆心的 x、y 坐标将作为参数传递给类的构造函数。圆周上的点也认为是在圆中。randPoint返回一个包含随机点的x坐标和y坐标的大小为2的数组。示例 1:输入:["Solution","randPoint","randPoint","randPoint"][[1,0,0],[],[],[]]输出: [null,[-0.72939,-0.655...
2020-08-27 15:43:07
662
原创 98. 验证二叉搜索树
给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例1:输入: 2 / \ 1 3输出: true示例2:输入: 5 / \ 1 4 / \ 3 6输出: false解释: 输入为: [5,1,4,null,null,3,6]。 根节点的值为 5 ,但是...
2020-08-27 15:22:23
133
原创 300. 最长上升子序列
给定一个无序的整数数组,找到其中最长上升子序列的长度。示例:输入: [10,9,2,5,3,7,101,18]输出: 4解释: 最长的上升子序列是[2,3,7,101],它的长度是 4。说明:可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。你算法的时间复杂度应该为O(n2) 。var lengthOfLIS = function (nums) { if(nums.length === 0) { return 0; } ...
2020-08-27 10:10:32
121
原创 【D3.js】selection.style一个小坑
在官网上该方法介绍的很详细,其中关于单位的介绍是浏览器会自动添加单位:因此:selection.style('top', 0);这种情况渲染出来的元素的top值会为0px而如果采用function的形式;selection.style('top', (d, index) => index * 20);这种情况默认只会给selection中第一个element的top值添加px。所以,需要在返回的值加上px。正确用法为:selection.style('top', (d, index.
2020-08-09 16:39:01
304
原创 查找重复元素
题目描述找出数组 arr 中重复出现过的元素示例1输入复制[1, 2, 4, 4, 3, 3, 1, 5, 3]输出复制[1, 3, 4]function duplicates(arr) { const map = new Map() const arr1 = [] arr.forEach((val) => { if(!map.has(val)) { map.set(val, 1)
2020-05-29 13:44:48
387
原创 添加元素
题目描述在数组 arr 末尾添加元素 item。不要直接修改数组 arr,结果返回新的数组示例1输入复制[1, 2, 3, 4], 10输出复制[1, 2, 3, 4, 10]function append(arr, item) { const arr1 = arr arr1.push(item) return arr1}...
2020-05-29 13:24:18
282
原创 Vue通过Render向子组件中传递作用域插槽
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>test_render</title> <script src="js/vue.js" type="text/javascript" charset="utf-8"></sc...
2020-04-01 12:22:17
1892
原创 129. 求根到叶子节点数字之和
给定一个二叉树,它的每个结点都存放一个0-9的数字,每条从根到叶子节点的路径都代表一个数字。例如,从根到叶子节点路径1->2->3代表数字123。计算从根到叶子节点生成的所有数字之和。说明:叶子节点是指没有子节点的节点。示例 1:输入: [1,2,3] 1 / \ 2 3输出: 25解释:从根到叶子节点路径 1->2 ...
2020-03-21 18:41:55
126
原创 JavaScript中&&与||的独特用法
在JavaScript中,&& 和||不仅用于 boolean 类型也用于对象。&&:如果&&左侧是为 false ,那么直接返回 false。console.log(false&&true);//falseconsole.log(false&&“abc”);//false统统直接返回false。如果...
2020-03-21 16:05:56
174
Spring Boot整合Spring Batch,实现批处理
2019-03-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅