自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

转载 React-router V6路由守卫

React-router V6 的路由守卫简单实现

2022-02-10 17:58:01 3355

原创 leetcode-376摆动序列

动态规划→贪心两种方式// 动态规划 var wiggleMaxLength = function(nums) { let up = 1,down = 1; for(let i = 1;i<nums.length;i++){ if(nums[i] > nums[i - 1]){ up = down + 1; } if(nums[i] < nums[i - 1]){

2021-10-30 19:37:56 142

原创 leetcode 234-回文链表

虽然是简单题,但快慢指针的解法挺有意思的。解题分三个部分,一是用快慢指针找到回文的临界节点。慢指针每次跑一个,快指针每次跑两个节点,不管链表长度是奇数还是偶数,我们都能得到以慢指针开头的回文后半部分。(在判断条件是while(fast && fast.next)的情况下)第二部分是反转链表,比较基础;第三部分,把两个比较两串链表的头结点值,不相等直接返回false,相等则分别都往下移动一个节点,直到比较完都相等则返回true。const isPalindrome = (head).

2021-10-24 22:10:35 1034

原创 浮动以及清除浮动

1.什么是浮动?浮动定位将元素排除在普通流外面,元素脱离文档,不占据空间,浮动元素碰到包含它的边框或者浮动元素的边框停留。2.为什么要清除浮动1.父元素的高度无法撑开,影响与父元素同级的元素2.和浮动元素同级的元素会跟在后面3.如果浮动元素不是第一个,那么在这个元素前面的元素也必须浮动,不然会影响效果3.清除浮动的方法1.clear:both;可以解决2和3。也就是在需要清浮动的元素下放一个div,并加上clear:both。 <div class="content" &

2021-10-17 13:04:57 108

原创 git常用命令

A.基础知识工作区:本地项目存储位置暂存区:工作区到远程仓库的中间态远程仓库:远程代码存储地址 //ssh 或者httpsB.常用命令1.克隆git clone url 2.提交(先创建一个远程仓库)cd 到本地项目的根目录下git initgit add . //git add 文件名.文件类型 只把这一个文件提交到暂存区git commit -m "提交说明"git remote add origin '你在github为该项目创建的仓库地址' //我用的是sshgit

2021-10-12 13:31:01 79

原创 leetcode474-一和零

/** * @param {string[]} strs * @param {number} m * @param {number} n * @return {number} */ // 一样是可以转化为01背包问题, 物品的大小就是str中0 1的数量, 所以背包有两个维度 // 物品的价值就是子集数量的多少var findMaxForm = function(strs, m, n) { const dp = Array.from(Array(m+1.

2021-10-11 20:48:05 72

原创 leetcode1049-最后一块石头的重量

/** * @param {number[]} stones * @return {number} */var lastStoneWeightII = function(stones) { // dp 数组最大容量是 max(stones[length]) * max(stones[i]) /2 + 1 // dp[j]的含义是 容量为j的背包 最多可以背dp[j]这么多的石头 let dp = new Array(15001).fill(0); let.

2021-10-06 09:07:00 114

原创 git报错

fatal: refusing to merge unrelated histories git pull origin master --allow-unrelated-histories fatal: unable to access 'http:/XXfatal: unable to access 'http:/XXX/github.com ': Failed to connect to github.com port 443 after 21088 ms: Timed outfatal: p

2021-10-04 21:54:45 382

原创 npm 报错等问题

npm 报错等问题因为npm总是报错 开个帖子记录一下错误解决方法我自己在网上搜索debug信息发现,其实对别人有用的,对自己不一定有用,还是要一个一个多试试。中间试不对的时候,也不要想着砸电脑(虽然我经常想砸电脑,但我每次都会克制自己)。两个字:心态。多试试总能跑出来的。第二点就是,多记录,真的,我有些bug其实之前就碰到过,还成功解决了,但是下次碰到的时候,因为之前没有记录解决过程,又要从头开始找信息,非常浪费时间。Part1 报错信息(待完善)//1.a complete log can

2021-10-01 11:07:39 82

原创 JavaScript 统计字符串中每个字符出现的次数

// 统计字符串中每个字符出现的次数function count(str){ let counter = {}; for(let i = 0;i<str.length;i++){ counter[str[i]]?counter[str[i]]++:counter[str[i]]=1; } return counter; // 或者 // var arr = Object.values(counter); return arr;

2021-09-21 14:53:39 1357

原创 leetcode264-丑数II

// 1. 1 是最小的丑数。// 2.对于任意一个丑数 xx,其与任意的质因数(22、33、55)相乘,结果(2x2x、3x3x、5x5x)仍为丑数。// 3.3指针法 var nthUglyNumber = function(n) { // 新建一个丑数数组 arr[0]不要 从1开始 var arr = new Array(n+1); arr[1] = 1; // 每一个丑数数组 arr 通过 arr*2 arr*3 arr*5 形成三个数组..

2021-09-18 10:53:37 54

原创 leetcode-240. 搜索二维矩阵 II

var searchMatrix = function(matrix, target) { if( matrix.length === 0 && matrix[0].length === 0) return false; let i = 0, j = matrix[0].length - 1; while(i < matrix.length && j >= 0) { if(matrix[i][j] == target) retur.

2021-09-17 10:23:37 54

原创 leetcode-链表

206-反转链表代码:/** * Definition for singly-linked list. * function ListNode(val, next) { * this.val = (val===undefined ? 0 : val) * this.next = (next===undefined ? null : next) * } *//** * @param {ListNode} head * @return {ListNode} *///

2021-09-01 21:51:50 66

原创 leetcode200-岛屿数量

1.dfs法 var numIslands = function(grid) { if(grid == null || grid.length == 0) return 0; let res = 0; let row = grid.length; let col = grid[0].length; // 开始遍历 grid 用两个for 循环 for(let i = 0;i<row;i++){ for(let j.

2021-08-26 10:34:53 63

原创 leetcode-二叉树

102-层序遍历1.dfs法/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this.left = (left===undefined ? null : left) * this.right = (right===undefined ? null : right) *

2021-08-23 22:51:05 69

原创 leetcode20-有效的括号

运用栈的知识,先进后出,碰到左括号,存进栈中,碰到右括号,从栈中pop出来配对。最后如果stack.length==0说明所有右括号都匹配了并且不剩下左括号,返回true/** * @param {string} s * @return {boolean} */ var isValid = function(s) { let stack = []; let temp =''; if(s.length==0) return true; for(let ch.

2021-08-23 10:32:35 60

原创 leetcode31-下一个排列

/** * @param {number[]} nums * @return {void} Do not return anything, modify nums in-place instead. */function nextPermutation(nums) { let i = findI(nums); let k = i+1; nums = swap(i,nums); nums = sort(k,nums); } // 先.

2021-08-23 09:32:58 74

原创 动态规划-leetcode

53-最大子序和/**@param {number[]} nums@return {number}*/var maxSubArray = function(nums) {let sum = nums[0];let max = nums[0];if(nums.length == 1){return nums[0]}else{for(let i =1;i<nums.length;i++){sum = sum + nums[i];sum = sum >= nums[i]

2021-08-22 19:36:13 61

原创 力扣-15 三数之和

力扣-15 三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]/** * @param {number[]} nums * @return {number[][]} */ var threeSum = function(n

2021-08-20 20:49:09 85

原创 js数组随机排序

const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];const arr1 = [];// 1.随机交换function sort1() { for (i = 0; i < arr.length; i++) { var rand = parseInt(Math.random() * arr.length); console.log(rand); /* 这段代码的意思简单来说,就是不停地交换索引值对应的数 假

2021-08-02 00:36:43 477

原创 2021-08-01

JavaScript金额表示(从后到前每隔三个数用逗号隔开)@TOCvar str = '12345678';function reverse(str) { // 声明变量不能用var 否则调用一次函数以后 newStr 就不再是空字符串了 let newStr = ''; for (var i = str.length - 1; i >= 0; i--) { // 和数组的push是一个意思 newStr = newStr + str[i] a += b

2021-08-01 15:39:07 32

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除