知识体系
文章平均质量分 69
时清云
自强不息,厚德载物;日拱一卒,功不唐捐;海纳百川,有容乃大。这世上没有最强的人,只有想变强的人,做一个简单真实的自己。
展开
-
【算法】除自身以外数组的乘积
难度:中等。原创 2024-08-18 22:12:03 · 259 阅读 · 1 评论 -
【算法】有效的字母异位词
针对字母异位词的问题,还有一种较为直观且高效的解法,那就是使用哈希映射(在 JavaScript 中通常是对象或 Map)。要判断两个字符串s和t是否是字母异位词,核心思想是检查两个字符串中每个字符出现的次数是否完全相同。要判断两个字符串s和t是否是字母异位词,核心思想是检查两个字符串中每个字符出现的次数是否完全相同。注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。原创 2024-08-13 23:05:06 · 340 阅读 · 0 评论 -
【算法】山脉数组的峰顶索引
难度:中等。原创 2024-08-06 22:29:17 · 214 阅读 · 0 评论 -
【算法】在排序数组中查找元素的第一个和最后一个位置
难度:中等。原创 2024-08-02 09:31:34 · 170 阅读 · 0 评论 -
【算法】搜索插入位置
难度:简单。原创 2024-08-01 10:08:11 · 431 阅读 · 0 评论 -
【算法】二分查找
难度:简单。原创 2024-08-01 09:05:38 · 315 阅读 · 0 评论 -
【前端手写代码】手写instanceof方法
instanceof运算符用于判断构造函数的prototype属性是否出现在对象的原型链中的任何位置。原创 2024-07-30 09:32:33 · 251 阅读 · 0 评论 -
【算法】课程表
难度:中等。原创 2024-07-28 21:34:00 · 44 阅读 · 0 评论 -
【算法】岛屿数量
难度:中等。原创 2024-07-27 22:02:12 · 380 阅读 · 0 评论 -
【算法】合并区间
难度:中等。原创 2024-07-26 21:58:13 · 104 阅读 · 0 评论 -
【算法】插入区间
难度:中等。原创 2024-07-25 23:07:27 · 429 阅读 · 0 评论 -
【算法】分割回文串
难度:中等。原创 2024-07-24 22:46:47 · 448 阅读 · 0 评论 -
【算法】子集II
递归函数需要接收当前子集、当前遍历到的数组下标以及上一个被选中元素的下标作为参数。3、原创 2024-07-23 17:58:48 · 522 阅读 · 0 评论 -
【算法】子集
难度:中等。原创 2024-07-22 22:47:14 · 265 阅读 · 0 评论 -
【算法】有效的括号字符串
难度:中等。原创 2024-07-21 16:09:16 · 420 阅读 · 0 评论 -
【算法】跳跃游戏II
难度:中等。原创 2024-07-20 22:22:16 · 452 阅读 · 2 评论 -
【算法】跳跃游戏
难度:中等。原创 2024-07-19 23:11:48 · 432 阅读 · 0 评论 -
【算法】数组中的第K个最大元素
难度:中等。原创 2024-07-18 23:01:05 · 273 阅读 · 0 评论 -
【算法】 数据流中的第 K 大元素
难度:简单。原创 2024-07-17 23:49:06 · 323 阅读 · 0 评论 -
【算法】LRU缓存
难度:中等。原创 2024-07-16 18:36:49 · 877 阅读 · 0 评论 -
【算法】二叉树的层序遍历
难度:中等。原创 2024-07-15 23:30:18 · 347 阅读 · 0 评论 -
【算法】验证二叉搜索树
难度:中等。原创 2024-07-14 21:56:01 · 352 阅读 · 0 评论 -
【算法】平衡二叉树
难度:简单。原创 2024-07-13 23:05:26 · 999 阅读 · 0 评论 -
【算法】删除链表的倒数第 N 个结点
难度:中等。原创 2024-07-12 22:43:01 · 394 阅读 · 0 评论 -
【算法】反转链表
难度:简单。原创 2024-07-11 22:37:50 · 372 阅读 · 0 评论 -
【算法】字符串的排列
难度:中等给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true;否则,返回 false。换句话说,s1 的排列之一是 s2 的 子串。原创 2024-07-10 14:04:38 · 476 阅读 · 0 评论 -
【算法】无重复字符的最长子串
难度:中等。原创 2024-07-09 16:00:46 · 340 阅读 · 0 评论 -
【算法】买卖股票的最佳时机
使用滑动窗口来解题难度:简单。原创 2024-07-09 11:19:55 · 353 阅读 · 0 评论 -
【算法】接雨水
难度:困难。原创 2024-07-08 23:40:20 · 529 阅读 · 0 评论 -
【算法】验证回文串
如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串。字母和数字都属于字母数字字符。给你一个字符串 s,如果它是 回文串 ,返回 true;否则,返回 false。示例 1:输入: s = “A man, a plan, a canal: Panama”输出:true解释:“amanaplanacanalpanama” 是回文串。示例 2:输入:s = “race a car”输出:false。原创 2024-07-07 20:44:17 · 282 阅读 · 0 评论 -
【算法】柱状图中最大的矩形
单调栈法之所以被想到,是因为它能够高效地处理当前柱子与其左右两边柱子高度的比较关系,利用栈的特性(后进先出)来快速确定每个柱子作为矩形高度时的左右边界。这种方法特别适合处理与顺序相关且需要快速检索“最近的特定条件”的问题。给定 n 个非负整数,用来表示柱状图中各个柱子的高度。输入:heights = [2,1,5,6,2,3]求在该柱状图中,能够勾勒出来的矩形的最大面积。解释:最大的矩形为图中红色区域,面积为 10。解释:最大的矩形为图中红色区域,面积为 4。输入:heights = [2,4]原创 2024-07-06 23:21:18 · 323 阅读 · 0 评论 -
【JavaScript】具有 iterable 接口的数据结构
在这个例子中,iterableObj 对象实现了 Symbol.iterator 方法,返回一个迭代器对象,通过 for…of 循环遍历时,依次输出迭代器返回的值。因此,具有 iterable 接口的数据结构是指支持迭代器协议,可以通过 for…of 循环或其他遍历方法遍历其成员的数据结构。在 JavaScript 中,具有 iterable 接口的数据结构包括。这些数据结构可以使用。循环进行遍历,也可以通过。迭代器对象需要包含一个。的方法,该方法返回一个。方法都会返回一个包含。原创 2024-07-06 16:14:21 · 332 阅读 · 0 评论 -
【JavaScript】浅拷贝与深拷贝
对象浅拷贝与深拷贝是我们经常在项目开发中遇到的问题。那怎么更好的实现呢?在JavaScript中,浅拷贝(shallow copy)和深拷贝(deep copy)是处理对象和数组拷贝时经常遇到的概念。它们主要区别在于的处理方式。原创 2024-07-06 12:47:20 · 1101 阅读 · 0 评论 -
【算法】逆波兰表达式求值
遍历结束后,栈中只剩下一个元素,即为表达式的计算结果。5、原创 2024-07-05 22:42:04 · 557 阅读 · 0 评论 -
【算法】有效的括号
给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。示例 1:输入:s = “()”输出:true示例 2:输入:s = “()[]{}”输出:true示例 3:输入:s = “(]”输出:false提示:s 仅由括号 ‘()[]{}’ 组成。原创 2024-07-04 23:20:01 · 157 阅读 · 0 评论 -
【算法】最长连续序列
给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为 O(n) 的算法解决此问题。示例 1:输入:nums = [100,4,200,1,3,2]输出:4解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。示例 2:输入:nums = [0,3,7,2,5,8,4,6,0,1]输出:9提示:我们做算法题的时候,一定先审好题:题目要求找出(不要求序列元素在原数组中的连续)的长度。原创 2024-07-03 11:45:23 · 334 阅读 · 0 评论 -
【算法】字母异位词分组
通过先把字符串转成数组,再进行排序,然后再转成字符串。如果是字符包含的字母相同,则最后得到转化之后的字符串都是一样的,接着再进行比较,这样复杂度降低了,逻辑更清晰了。原创 2024-07-02 21:43:52 · 370 阅读 · 0 评论 -
【算法】三数之和
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!= k ,同时还满足 nums[i] + nums[j] + nums[k] == 0。不同的三元组是 [-1,0,1] 和 [-1,-1,2]。输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]输入:nums = [0,1,1]输入:nums = [0,0,0]解释:唯一可能的三元组和为 0。输出:[[0,0,0]]原创 2024-06-30 23:02:29 · 192 阅读 · 0 评论 -
【算法】两数之和
最简单的方法是通过两层for循环进行遍历, 使用暴力的查找两个子元素。但是这种方法的时间复杂度为O(n^2)。通过HashMap我们可以将时间复杂度降为O(2n)。给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。给定 nums = [2, 7, 11, 15], target = 9。因为 nums[0] + nums[1] = 2 + 7 = 9。原创 2024-06-29 16:49:15 · 190 阅读 · 0 评论 -
【计算机网络】HTTP状态码103:了解它的含义和应用场景
HTTP错误码是指在HTTP协议中定义的一系列状态码,用于表示客户端请求的处理结果。常见的HTTP错误码包括:1xx(信息性状态码)、2xx(成功状态码)、3xx(重定向状态码)、4xx(客户端错误状态码)和5xx(服务器错误状态码)。HTTP错误码103属于1xx状态码中的一种特殊情况。本篇博客介绍了HTTP错误码103的含义、应用场景和处理方法。HTTP错误码103是一种非常特殊的状态码,用于在服务器处理请求时,提前向客户端发送一些重要的提示信息。转载 2024-06-13 16:07:27 · 589 阅读 · 0 评论