b_lack_
码龄5年
关注
提问 私信
  • 博客:6,261
    6,261
    总访问量
  • 41
    原创
  • 745,602
    排名
  • 2
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:黑龙江省
  • 加入CSDN时间: 2019-10-20
博客简介:

b_lack_的博客

查看详细资料
个人成就
  • 获得1次点赞
  • 内容获得0次评论
  • 获得2次收藏
创作历程
  • 29篇
    2020年
  • 12篇
    2019年
成就勋章
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

174人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

课程表||

课程表||· 题目描述:· 思路:· 代码:class Solution { public int[] findOrder(int numCourses, int[][] prerequisites) { if(numCourses==0) { return new int[0]; } HashSet<Integer>[]hash=new HashSet[numCourses];
原创
发布博客 2020.05.14 ·
294 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

课程表

课程表题目描述:你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习?示例 1:输入: 2, [[1,0]]输出: true解释: 总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所以这是可能的。示例 2:输入: 2, [[1,0],[0,1]]输出:
原创
发布博客 2020.05.14 ·
246 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

二叉树的最近公共祖先

二叉树的最近公共祖先题目描述:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入:...
原创
发布博客 2020.05.01 ·
233 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

二叉树的最大深度

二叉树的最大深度题目描述:思路:这里采用的是迭代的方法,首先判断根节点是否为空,是则返回0,否则分别将左节点和右节点作为根节点进行遍历,每次+1,最后将左右子树得到的大者+1作为返回值.注意:最大值+1是因为max记录的是层数(从0开始)代码:/** * Definition for a binary tree node. * public class TreeNode { *...
原创
发布博客 2020.04.28 ·
177 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

对称二叉树

对称二叉树题目描述:思路:借助队列“先进后出”的特点将对称位置的节点顺序入队,再出队,这样得到的就是它们的倒序排列,比较两次结果是否相同。比较的条件是如果都为null,则符合,这时便不再判断后面的条件,而进行下一次迭代;如果其中一个为null或者它们两个的值不相等,则不符合条件,直接返回false;如果遍历完整个二叉树,则返回true。代码:/** * Definition for ...
原创
发布博客 2020.04.21 ·
110 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

相同的树

相同的树题目描述:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。思路:首先判断根节点是否都为null,若是则返回true;若只有一个为null,或者它们的值不相等,则返回false。然后采用迭代的方法判断左子树和右子树,如果都满足条件就返回true,否则为false。我的代码:/** * Definition ...
原创
发布博客 2020.04.21 ·
100 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

格雷编码

格雷编码题目描述:格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个位数的差异。给定一个代表编码总位数的非负整数 n,打印其格雷编码序列。格雷编码序列必须以 0 开头。示例 1:输入: 2输出: [0,1,3,2]解释:00 - 001 - 111 - 310 - 2对于给定的 n,其格雷编码序列并不唯一。例如,[0,2,3,1] 也是一个有效的格雷编码序列...
原创
发布博客 2020.04.15 ·
98 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

子集

子集题目描述:思路:count用来记录要复制的元素数,第一个内部循环的作用是复制子集,第二个内部循环是对后面复制的子集加入当前元素,每次加入一个数字,直至所有数字都添加进去。代码:public class Solution { public IList<IList<int>> Subsets(int[] nums) { IList<...
原创
发布博客 2020.04.15 ·
115 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

只出现一次的数字||

只出现一次的数字||题目描述:思路:因为该数组中数字除了出现一次那个数字外,其他数字都出现三次,按位异或显然是不行的,因为都是奇数次,但我们仍然可以用位运算来解决,用一个32位数来统计所有数字在所有位数上出现的次数,那么除了只出现一次的那个数字的位数外,其他位数记录的出现次数都能被3整除,把这些位找出来再与0做或运算即为要找的数字。代码:public class Solution {...
原创
发布博客 2020.04.15 ·
86 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

只出现一次的数字

只出现一次的数字题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4思路及代码:由于要找的是只出现一次的数字,可以根据按位异或操作符——即对值的二进制格式...
原创
发布博客 2020.04.07 ·
100 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

无重复字符的最长子串

无重复字符的最长子串题目描述:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入 : “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无...
原创
发布博客 2020.04.07 ·
154 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

反转字符串

反转字符串题目描述:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例...
原创
发布博客 2020.04.02 ·
314 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

最长公共前缀

最长公共前缀题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明: 所有输入只包含小写字母 a-z 。思路和代码:首先判断所给字符串数组...
原创
发布博客 2020.03.31 ·
163 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

滑动窗口最大值

滑动窗口最大值题目描述给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7][1 3 -1] -3 5 3 6 7 31 [3 -1 -3...
原创
发布博客 2020.03.26 ·
124 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计循环双端队列

设计循环双端队列题目描述:设计实现双端队列。你的实现需要支持以下操作:**MyCircularDeque(k):**构造函数,双端队列的大小为k。**insertFront():**将一个元素添加到双端队列头部。 如果操作成功返回 true。**insertLast():**将一个元素添加到双端队列尾部。如果操作成功返回 true。**deleteFront():**从双端队列头部删...
原创
发布博客 2020.03.25 ·
104 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

整数反转

整数反转题目描述:将一个 32 位的有符号整数每位上的数字进行反转。注意:32 位的有符号整数其数值范围为 [−231, 231 − 1],如果反转后整数溢出那么就返回 0。示例 1:输入: 135输出: 531示例 2:输入: -16输出: -61示例 3:输入: 320输出: 23思路:采用取余的方法获取个位上的数字,然后加给一个长整型变量,每次循环后32 位有...
原创
发布博客 2020.03.24 ·
159 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

逆波兰表达式求值

逆波兰表达式求值题目描述:根据逆波兰表示法,求表达式的值。有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。思路:我们以+ - * / 作为开关语句的case条件,遇到运算符,就将其前的两个数字进行相应的运算,若遍历到最后...
原创
发布博客 2020.03.19 ·
278 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

最小栈

最小栈题目描述:设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x) – 将元素 x 推入栈中。pop() – 删除栈顶的元素。top() – 获取栈顶元素。getMin() – 检索栈中的最小元素。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.pus...
原创
发布博客 2020.03.18 ·
204 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

有效的括号

有效的括号题目描述:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。思路:首先对数组进行初步判断,如果为空,则有效;如果数组元素有奇数个,或首元素为右括号,则无效;否则,借助一个栈暂时存放左括号,若遇到右括号且与栈顶元素可配...
原创
发布博客 2020.03.18 ·
93 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

环形链表

环形链表题目描述判断给定链表中是否有环思路我用的是哈希表算法,创建一个哈希表用来存储每一个节点的内存地址,当遍历到最后一个节点时,判断该节点的引用是否存在于哈希表中,如果存在则返回true。代码/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode nex...
原创
发布博客 2020.03.12 ·
88 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多