力扣
鸭鸭:)
前端小萌新一枚~
展开
-
动态规划力扣题
动态规划原创 2022-10-15 21:08:50 · 179 阅读 · 0 评论 -
哈希表与字符串
字符数量为偶数,count+数量;字符数量为奇数,count+数量-1 flag=1;flag代表的是是否有中心节点,最终长度max_length=count+flag.原创 2022-10-13 00:00:48 · 259 阅读 · 0 评论 -
二分查找与二叉排序树力扣
给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [ - 1 , - 1 ]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。示例 1 :输入:nums = [ 5 , 7 , 7 , 8 , 8 , 10 ] , target = 8 输出: [ 3 , 4 ]思路:可以分别找出左端点和右端点,push到result中去。原创 2022-10-11 23:34:34 · 159 阅读 · 0 评论 -
二叉树与图力扣算法题
*思路:**深度搜索根到叶子结点,求和,当遍历到叶子结点时,判断和是否为sum,是push到结果里面,否则继续遍历左子树和右子树。如果不满足条件,需要弹出栈顶并且sum减去。原创 2022-10-07 17:25:19 · 427 阅读 · 0 评论 -
递归,回溯,分治力扣算法题
递归,回溯,分治原创 2022-09-30 16:02:32 · 216 阅读 · 0 评论 -
贪心力扣,poj相关算法题
贪心原创 2022-09-27 00:20:21 · 201 阅读 · 0 评论 -
栈、队列、堆相关力扣算法题
栈,链表,队列原创 2022-09-23 22:59:41 · 158 阅读 · 0 评论 -
链表相关力扣·算法题
链表原创 2022-09-20 21:01:54 · 202 阅读 · 0 评论 -
js数据结构与算法——合并两个有序数组
给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。 示例 1:输入:nums1 = [1原创 2021-09-13 22:05:31 · 360 阅读 · 0 评论 -
js数据结构与算法——多数元素
多数元素给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1:输入:[3,2,3]输出:3示例 2:输入:[2,2,1,1,1,2,2]输出:2var arr = [3,3,4];var majorityElement = function(nums) { const n = nums.length / 2; let map原创 2021-08-28 23:47:10 · 257 阅读 · 0 评论 -
js数据结构与算法——只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4方法一:利用集合Set类,将数组元素添加到集合中,若添加失败,就说明已添加过并有重复的,在Sst类里面删掉这个元素。//给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一原创 2021-08-28 12:18:57 · 366 阅读 · 0 评论 -
面试题 17.07. 婴儿名字 总结
1.Set()ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。类似于python中的元组。2.forEach()方法forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。function(currentValue, index, arr)3.slice()方法slice() 方法可从已有的数组中返回选定的元素。arrayObject.slice(start,end)注意,该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段原创 2020-12-06 15:33:30 · 195 阅读 · 0 评论 -
14.最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。但是想不通为啥不能用malloc#include<st...原创 2019-12-29 16:00:44 · 303 阅读 · 0 评论 -
力扣38外观数列-js
要 描述 一个数字字符串,首先要将字符串分割为 最小 数量的组,每个组都由连续的最多 相同字符 组成。然后对于每个组,先描述字符的数量,然后描述字符,形成一个描述组。要将描述转换为数字字符串,先将每组中的字符数量用数字替换,再将所有描述组连接起来。以后会学习如下:{哈希表正则表达式递归+双指针}我用的是递归加遍历,代码如下:<script> var countAndSay = function(n){ if(n===1) return '1';原创 2020-11-01 16:03:32 · 307 阅读 · 0 评论 -
力扣31-js
字典序是什么字典序(dictionary order),又称 字母序(alphabetical order),原意是表示英文单词在字典中的先后顺序,在计算机领域中扩展成两个任意字符串的大小关系。英文中的 字母表(Alphabet) 按照如下的顺序排列:ABCDEFG HIJKLMN OPQRST UVWXYZabcdefg hijklmn opqrst uvwxyz在字典中,单词是按照首字母在字母表中的顺序进行排列的在计算机领域中,这个字典序就不仅仅用来比较英文单词了,而是比较任意字符串。对于两原创 2020-11-01 14:10:44 · 254 阅读 · 0 评论