自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【算法】滑动窗口

常见的滑动窗口算法

2022-09-18 21:35:25 329 1

原创 【Vue2源码解析】02.依赖收集&&异步更新&&mixin实现原理

Vue2源码解析之依赖收集、异步更新、mixin

2022-07-11 20:47:02 360

原创 【Vue2源码解析】01.响应式原理

Vue2源码解析之虚拟DOM生成真实DOM

2022-07-11 09:25:49 517

原创 【JS】防抖和节流

防抖和节流

2022-07-05 14:51:31 319

原创 【leetcode】打家劫舍

打家劫舍

2022-07-03 22:42:20 138

原创 【leetcode】分割等和子集

分割等和子集

2022-07-03 20:57:11 105

原创 【算法】检查括号是否成对出现

检查括号是否成对出现

2022-07-03 20:51:37 484

原创 【Leetocode】买卖股票

leetcode买卖股票算法通解系列

2022-06-30 21:02:52 72

原创 【JS】案例3轮播图

轮播图的实现

2022-06-25 22:22:04 61 1

原创 【JS】案例2放大镜效果

京东商品放大镜效果

2022-06-24 22:52:36 56

原创 【JS】案例1 拖动模态框

拖拽对话框的简单实现

2022-06-24 20:30:39 79

原创 【JS】闭包与作用域

作用域与闭包

2022-06-20 19:36:53 187

原创 【JS】原型与类的继承

js原型与类的继承

2022-06-20 19:29:18 179

原创 【JS】JS中执行上下文和执行栈

JS中执行上下文和执行栈

2022-06-19 15:29:38 525

原创 【JS】bind、call、apply的区别

bind、call、apply的区别

2022-06-19 10:53:30 395

原创 【JS】new操作符

new操作符的底层

2022-06-18 16:48:41 380

原创 【JS】JS基础

js基础

2022-06-16 10:38:00 130

原创 【CSS】CSS盒子模型和 BFC

CSS盒子模型及BFC规范

2022-06-14 10:37:25 99

原创 【JS】浅拷贝与深拷贝

JS深浅拷贝

2022-06-12 16:16:23 137

原创 【JS】this对象

关于JS中的this对象总结

2022-06-12 13:28:20 99

原创 【算法】01.链表

常见链表算法题

2022-06-07 21:49:53 219

原创 【HTML】HTML基础

html基础

2022-06-07 20:06:07 415

原创 【Web书城】书签的实现

书签实现书签布局初始为top:-0.35rem在上面隐藏,高度也为0.35rem,绝对定位。当鼠标拖拽屏幕向下拉到一定程度时,会显示一个向上的箭头以及“松手添加书签”的文本和一个蓝色的书签icon书签icon的实现主要由下面两个样式//1.设置border的宽度this.$refs.bookmark.style.borderWidth = `${(this.height - 5) / 100}rem ${(this.width / 2) / 100}rem ${(5) / 100}rem ${(th

2022-05-29 11:55:04 451

原创 【Web书城】图书详情页开发

当点击flap-card中的Book、guess-you-like、recommend和书架中的book时,都会调用showBookDetail方法跳转到StoreDetail.vue页面export function showBookDetail(vue, book) { vue.$router.push({ path: '/book-store/detail', query: { fileName: book.fileName, cate

2022-05-28 14:50:10 298

原创 【CSS3】动画详解

在css3中主要有三种动画transition:过渡transfrom:2D转换 | 3D转换animation过渡:transition这个动画意义上是补间动画(自动完成从起始状态到终止状态的过渡,不用管中间的状态),与通过一帧一帧按照固定顺序和速度播放的帧动画不同transition包括四个属性transition-property:让哪些属性进行过渡,all(宽度背景色),widthtransition-duration:过渡的持续时间transition-timing-f

2022-05-28 10:50:18 161

原创 【Web书城】书城前端开发

书城首页效果图如下:组成部分:search-bar:搜索框flap-card:卡片翻转、烟花动画guess-you-likerecommendfeaturedcategory-bookcategory当点击flap-card中的Book、guess-you-like、recommend和书架中的book时,都会调用showBookDetail方法跳转到export function showBookDetail(vue, book) { vue.$router.push

2022-05-27 18:49:14 778

原创 科大讯飞语音合成WebApi

本来一开始是因为项目中需要用到听书功能,就想用科大讯飞的语音合成Web API,本来官方文档已经提供了一个完整demo,不过根据自己的需求还是弄了一天左右o(╥﹏╥)o官方文档: https://www.xfyun.cn/doc/tts/online_tts/API.html根据文档接口调用流程使用WebSocket请求接口与返回接口授权function getAuthStr(date) { let signatureOrigin = `host: ${config.host}\n.

2022-05-25 15:31:55 1133

原创 【剑指offer】23.链表中环的入口结点

题目给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。要求:空间复杂度 O(1),时间复杂度 O(n)例如,输入{1,2},{3,4,5}时,对应的环形链表如下图所示:可以看到环的入口结点的结点值为3,所以返回结点值为3的结点。快慢指针题解假设有两个指针fast和slow初始都指向head,fast每次走两步,slow每次走一步,若该链表存在环,则slow和fast则必会相遇假设第一次相遇时,slow走了k步,则fast因为速度是slow的2倍则会走2k步,

2022-05-18 22:50:54 136

原创 【剑指offer】26.树的子结构

题目: 输入两棵二叉树A和B,判断B是不是A的子结构(不是子树)。(约定空树不是任意一个树的子结构)。B是A的子结构, 即 A中有出现和B相同的结构和节点值。输入:A = [3,4,5,1,2], B = [4,1]输出:true返回 true,因为 B 与 A 的一个子树拥有相同的结构和节点值。解法一: 递归想法,只要A的左右子树含有B就行。而当递归到A的某个子树结构A'的根节点和B的根节点重合时,这时候就需要判断A'和B是否结构相同var isSubStructure = function

2022-04-27 17:14:54 928

原创 【剑指offer】49.丑数

题目: 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第 n个丑数。示例:输入:7返回值:8输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。题解一: 首先由丑数的定义可以写出一个函数判断是否是丑数,然后依次计数到n。但是这种方法是暴力破解,当n=1500时,牛客就显示运行超时function

2022-04-26 17:40:15 172

原创 【bug】browserify:无法加载文件D:\nodejs\node global\browserify.psl,因为在此系统上禁止运行脚本

在使用browerify命令打包编译文件时出现如下错误参考了如下文章解决:https://www.cnblogs.com/stcweb/articles/15685232.html以管理员权限打开PowerShellPS E:\前端\projects\js\js> get-ExecutionPolicyRestrictedPS E:\前端\projects\js\js> set-ExecutionPolicy RemoteSigned执行策略更改执行策略可帮助你防止执行不信任的

2022-04-26 14:48:52 333

原创 【剑指offer】36.二叉搜索树与双向链表

题目输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。解法: 由二叉搜索树数转换成一个排序的双向链表,因为二叉搜索树的特性(左子树小于根节点,右子树大于根节点)很自然就想到对其做一个中序遍历就能得到一个从小到大排序的链表,而双向链表则需要将前驱节点的right指针指向后驱节点,后驱节点的left指针指向前驱节点,因此在递归中序遍历时需要改变一下指针的指向。let head=null;let pre=null;function Convert(pRootOfTree){ //

2022-04-21 11:01:32 468

原创 【剑指offer】76.删除链表中重复的结点

题目:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表 1->2->3->3->4->4->5 处理后为 1->2->5示例:输入:{1,2,3,3,4,4,5}返回值:{1,2,5}解法: 想法很简单就是重建一个指针,在遍历原排序的链表时遇到重复的直接跳过,主要考虑到以下特殊情况function deleteDuplication(pHead){ //4.空链表 i

2022-04-20 13:08:23 75

原创 【剑指offer】48. 最长不含重复字符的子字符串

题目:请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。示例:输入:"abcabcbb"返回值:3(abc)输入:"bbbbb"返回值:1(b)输入:"pwwkew"返回值:3(wke)解法1: 想法很简单,依次遍历字符串,用str来保存当前位置i之前的最长不重复子串,如果字符s[i]在之前遍历的字串str中没有出现,则str将该s[i]拼接到末尾,反之str则进行更新,将s[i]这个字符在str出现位置到i之间的字符子串,并且每次都比较一下str长度和之

2022-04-19 13:58:15 108

原创 【剑指offer】62.判断是不是平衡二叉树

题目:输入一棵节点数为 n 二叉树,判断该二叉树是否是平衡二叉树。在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。示例:输入:{1,2,3,4,5,6,7}返回值:true输入:{}返回值:true思路: 这道题首先要明确平衡二叉树是只要满足两个条件中其中之一就行,第一是空树,第二是左右子树高度差不超过1,

2022-04-12 19:12:52 142

原创 将博客搬至CSDN

虽然博客园上记录的笔记更多,但是CSDN的受众更多,现已决定即本日起将博客园搬迁到CSDN

2022-03-31 08:39:00 60

原创 【剑指offer】44.数字序列中的某一位的数字

题目:数字以 0123456789101112131415… 的格式作为一个字符序列,在这个序列中第 2 位(从下标 0 开始计算)是 2 ,第 10 位是 1 ,第 13 位是 1 ,以此类题,请你输出第 n 位对应的数字。示例:输入:13返回值:1思路: 这道题是一道找规律题,首先我们要明确第n位数字所对应真实数是多少,先要知道这个数是几位数,然后再找具体下标。比如序列的第1001位是370所对应的中间一位即7.显然1001位不再0~9这个范围直接跳过,后面需要找第991(1001-10

2022-03-30 21:50:17 145

原创 【剑指offer】65.不用加减乘除做加法

题目: 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。思路: 这道题真有意思,拿到手的时候虽然有想到用二进制来算,但是还是想不到很透彻,看了官方解法真的不得不惊叹大佬们的智慧首先我们知道两个数相加分为两个步骤,首先是不带进位的相加,然后把第一步相加结果和进位再相加得到最后的运算结果先看第一步不带进位的相加,在二进制中,可得出1+1=0, 1+0=1, 0+1=1,0+0=1,这很明显可以得出是异或(^)操作而第二步可从下面表格看出进位结果是按位与(&)的操作

2022-03-29 20:11:59 458

原创 【剑指offer】11.旋转数组的最小数字

题目:有一个长度为 n 的非降序数组,比如[1,2,3,4,5],将它进行旋转,即把一个数组最开始的若干个元素搬到数组的末尾,变成一个旋转数组,比如变成了[3,4,5,1,2],或者[4,5,1,2,3]这样的。请问,给定这样一个旋转数组,求数组中的最小值。示例:输入:[3,4,5,1,2]返回值:1思路: 采用二分法进行查找,首先如果first指针所指向的数大于mid指针所指向的数,则说明mid在第二个递增序列中,最小目标值在前半截需要将mid赋值给last如果first指针所指向的数

2022-03-29 19:47:50 501

原创 【剑指offer】二叉树的深度

题目:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度,根节点的深度视为 1 。示例: 输入用例的二叉树如下:输入:{1,2,3,4,5,#,6,#,#,7}返回:4思路1: 本题是常见的二叉树算法题,第一种是借助队列这种数据结构,遍历每层节点后将层数加1function TreeDepth(pRoot){ // write code here if(!pRoot){ return 0;

2022-03-29 16:22:52 482

空空如也

空空如也

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

TA关注的人

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