自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaScript 每日一题---LeetCode 977. 有序数组的平方

题目描述:给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。解题思路:给定的数组为整数数组,也就是说会存在负数。最简单的方法就是先将每个数的平方 push 到一个新数组中,再 sort 一下。另一个思路是,既然是非递减排序,那么边界的数的平方一定大于中间的数(不一定是哪边)。所以我们可以首尾双指针遍历数组,比较哪个数的平方较大,最后将较大的数的平方 unshift 到一个新数组中即可。完整代码:/**...

2022-04-10 23:11:15 1081

原创 Vue.js --- Vuex 的安装与使用

每天更一篇--Day21

2022-04-09 20:57:13 1873 2

原创 JavaScript 每日一题---LeetCode 188. 买卖股票的最佳时机 IV

每天更一篇--Day20

2022-04-08 22:21:21 342

原创 JavaScript 每日一题---LeetCode 123. 买卖股票的最佳时机 III

每天更一篇--Day19

2022-04-07 22:28:58 1341

原创 JavaScript 每日一题---LeetCode 122. 买卖股票的最佳时机 II

每天更一篇--Day18

2022-04-06 23:05:22 949

原创 JavaScript 每日一题---LeetCode 121. 买卖股票的最佳时机

每天更一篇--Day17

2022-04-05 22:01:48 1523

原创 JavaScript 每日一题---LeetCode 6. Z 字形变换

每天更一篇--Day16

2022-04-04 23:26:59 141

原创 JavaScript 每日一题---LeetCode 744. 寻找比目标字母大的最小字母

每天更一篇--Day15

2022-04-03 23:41:15 94

原创 JavaScript 每日一题---LeetCode 5. 最长回文子串

每天更一篇--Day14

2022-04-02 22:11:12 978

原创 JavaScript 每日一题---LeetCode 954. 二倍数对数组

每天更一篇--Day13

2022-04-01 23:06:35 794

原创 JavaScript 每日一题---LeetCode 76. 最小覆盖子串

每天更一篇--Day12

2022-03-31 21:44:14 1355

原创 Vue.js---插槽

每天更一篇--Day11

2022-03-30 20:57:52 409

原创 Vue.js---Vue 中的代理服务器

挑战每天更一篇--Day10

2022-03-29 21:12:19 556

原创 JavaScript 每日一题---LeetCode 2024. 考试的最大困扰度

题目描述:一位老师正在出一场由 n 道判断题构成的考试,每道题的答案为 true (用 'T' 表示)或者 false (用 'F' 表示)。老师想增加学生对自己做出答案的不确定性,方法是 最大化 有 连续相同 结果的题数。(也就是连续出现 true 或者连续出现 false)。给你一个字符串 answerKey ,其中 answerKey[i] 是第 i 个问题的正确结果。除此以外,还给你一个整数 k ,表示你能进行以下操作的最多次数:每次操作中,将问题的正确答案改为'T' 或者'F'(...

2022-03-29 13:36:56 561

原创 Vue.js---消息订阅与发布(pubsub-js库)

消息订阅与发布也是实现组件间数据传递的一种实现方式,这里主要依赖于 pubsub-js库,首先需要安装该库。npm i pubsub-js再在需要的组件上引入该库import pubsub from 'pubsub-js'接下来进行消息订阅与发布://接收数据的组件this.pubid = pubsub.subscribe('baci',(a,b)=>{ console.log('baci done',b);})//传递数据的组件sendst...

2022-03-28 15:33:02 998

原创 Vue.js---全局事件总线

挑战每天更一篇--Day9

2022-03-28 13:54:42 795

原创 JavaScript 每日一题---LeetCode 693. 交替位二进制数

题目描述:给定一个正整数,检查它的二进制表示是否总是 0、1 交替出现:换句话说,就是二进制表示中相邻两位的数字永不相同。解题思路:1.对给到的数循环取余,若当前取余结果等于上次取余的结果,则说明相邻数字相同,则返回 false。循环结束返回 true。 2.利用位运算的异或运算。完整代码:/** * @param {number} n * @return {boolean} */var hasAlternatingBits = functio...

2022-03-28 09:46:23 311

原创 JavaScript 每日一题---LeetCode 4. 寻找两个正序数组的中位数

题目描述:给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。算法的时间复杂度应该为 O(log (m+n)) 。思路简单但细节满满的一个题 主要思路是双指针,移动次数为两数组长度和的一半Math.ceil((n1 + n2) / 2)。唯一需要注意的就是边界条件,数组越界的问题。var findMedianSortedArrays = function(nums1, nums2) { l...

2022-03-27 22:13:32 918

原创 Vue.js---自定义事件

挑战每天更一篇--Day8

2022-03-27 20:55:31 812

原创 JavaScript 每日一题---LeetCode 2028. 找出缺失的观测数据

题目描述:现有一份 n + m 次投掷单个 六面 骰子的观测数据,骰子的每个面从 1 到 6 编号。观测数据中缺失了 n 份,你手上只拿到剩余 m 次投掷的数据。幸好你有之前计算过的这 n + m 次投掷数据的 平均值 。给你一个长度为 m 的整数数组 rolls ,其中 rolls[i] 是第 i 次观测的值。同时给你两个整数 mean 和 n 。返回一个长度为 n 的数组,包含所有缺失的观测数据,且满足这 n + m 次投掷的 平均值 是 mean 。如果存在多组符合要求的答案,只需要返回其

2022-03-27 12:13:44 215

原创 JavaScript 每日一题---LeetCode 141. 环形链表

给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。如果链表中存在环 ,则返回 true 。 否则,返回 false 。神奇解法:JSON.stringify() 函数可以自动判断参数是否成环,若成环则报错,所以可以利用 t...

2022-03-27 11:38:43 866

原创 Vue.js---组件间传递数据的方法(初级)

挑战每天更一篇--Day7

2022-03-26 19:57:44 494

原创 JavaScript 每日一题---LeetCode 19. 删除链表的倒数第 N 个结点

题目描述:给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。解题思路:主要利用双指针,让右指针先走 n 步,再让两指针一起走直到右指针走到链表尽头为止。此时让左指针删除一个节点即可。注意需要判断一开始右指针就走到链表尽头的情况,如 [1],1,右指针一开始就会到链表尽头的下一个结点(null),此时返回的是头结点的 next 结点(因为头节点便是要删除的结点)。完整代码:/** * Definition for singly-linked list....

2022-03-26 13:38:00 706

原创 Vue.js---ref、props、mixin配置项

挑战每天更一篇--Day6

2022-03-25 22:58:07 479

原创 Vue.js---关闭语法检查

Vue.js初配置时可能会出现神奇报错,这时只需要关闭语法检查即可。在 vue.config.js 文件中配置如下代码:module.exports = { lintOnSave: false //关闭语法检查}注意需要 VSCode 中的 ESlink、jshint 等语法检查插件,否则仍然会报错。不要问我是怎么知道的。...

2022-03-25 21:30:58 2231

原创 JavaScript 每日一题---LeetCode 11. 盛最多水的容器

题目描述:给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。解题思路:本质上就是一个算面积的问题,取两条线中较短的一条与两条线的间隔相乘即为当前围成的面积。所以很容易就想到双指针的做法,即左指针最开始在最左端,右指针最开始在最右端,逐步向中间逼近。每次移动的是指向...

2022-03-25 11:11:02 320

原创 Vue.js---组件化编程 & Vue-cli的安装使用

挑战每天更一篇--Day5

2022-03-24 21:24:06 377

原创 JavaScript 每日一题---LeetCode 3. 无重复字符的最长子串

题目描述:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。解题思路:利用双指针划分一个区间为当前最长字串,右指针不断向右移动,每遇到一个字符就通过 Map 记录该字符及其最后一次出现的索引值。若判断 右指针遇到了出现过的字符 且 该字符上一次出现的位置大于等于左指针 ,则左指针移到该字符上一次出现的位置的下一个位置。判断的依据:通俗说法就是左右指针这个区间就是当前(遍历字符串时)时刻的字串,即右指针固定某个地方时的最...

2022-03-24 14:55:09 1208

原创 Vue.js---内置指令与自定义指令

挑战每天更一篇--Day4

2022-03-23 21:02:35 594

原创 JavaScript 每日一题---LeetCode 2.两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。解题思路: * function ListNode(val, next) { * this.val = (val===undefined ? 0 : val) * this.next = (next===undefined ? null : n

2022-03-23 11:51:19 770

原创 JavaScript 每日一题---LeetCode 1.两数之和

两数之和,梦开始的地方

2022-03-22 23:50:50 85

原创 Vue.js---获取表单元素

挑战每天更一篇--Day3的第二篇

2022-03-22 21:28:02 1408

原创 Vue.js---响应式原理

挑战每天更一篇--Day3

2022-03-22 17:15:48 4069

原创 Vue.js---列表渲染

挑战每天更一篇--Day2

2022-03-21 23:15:41 404

原创 Vue.js---数据代理

挑战每天更一篇--Day1

2022-03-20 23:38:45 845

原创 JavaScript进阶--ES6新特性

目录let声明变量:const声明变量:解构赋值:模板字符串:对象简化写法:箭头函数:参数默认值:rest参数:扩展运算符:Symbol数据类型:迭代器(iterator):生成器:Promise:Set:Map:第一次写那么多,脑壳疼let声明变量:变量不能重复声明,有效防止变量污染 作用域为块级作用域,只在代码块中有效,如 if (true) { var a = 10; let b = 20;}c.

2022-03-18 21:58:41 1469

原创 JavaScript--DOM事件流

DOM事件流的概念当某个事件发生时,事件会在元素节点之间按照特定的顺序传播,这个传播过程称为DOM事件流。DOM事件流分为两个阶段--捕获阶段、冒泡阶段。捕获阶段简单来说就是从整个页面(即document)开始到html--body--div--ul--li...。即根据元素的嵌套顺序依次传递事件,直到找到触发该事件的元素为止。而冒泡阶段则为捕获阶段的逆过程,即从触发事件的元素开始根据元素的嵌套顺序找到document为止。即除触发事件的元素外,其余每个节点都被访问两次,从而会出现事...

2022-02-04 22:22:31 761 1

原创 JavaScriptDOM基本操作--留言板页面

目标:实现基本留言板功能,有提交留言、删除留言的交互功能。页面布局:一个输入文本框textarea、一个提交按钮、一个无序列表用于存储留言信息。 <textarea name="" id="" cols="30" rows="10"></textarea><br> <button>submit</button> <ul></ul>实现逻辑:1.提交留言:每当按下...

2022-01-27 21:44:30 1243

原创 JavaScript基本DOM操作--密码输入框切换是否可见

实现原理:通过js的DOM操作更改表单元素的type属性(text/password)来控制表单输入框的文本是否可见。//css部分 #d { position: relative; width: 200px; height: 30px; margin: 100px auto; border-bottom: 1px solid #ccc; ...

2022-01-26 23:57:38 828

原创 JavaScript构造函数继承

首先介绍对象的call()函数和apply()函数,这两个函数的作用相同、用法不同。它们的作用均是指定当前调用函数的this对象是谁。call()函数:在第一个传递的参数为一个对象,该对象为该函数的this对象,后面依次传递函数的实参。apply()函数:与call函数大致相同,不同的是实参是以数组的形式传递,用一个数字存储所有实参并作为第二个参数传入apply()函数中。 而构造函数的原理就是利用call函数,在子类的构造函数中用c...

2022-01-26 01:34:45 1889

空空如也

空空如也

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

TA关注的人

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