- 博客(18)
- 收藏
- 关注
原创 字符串相加
摘要:本文介绍字符串数字相加的算法实现。关键点包括:从末尾对齐相加、处理进位、短数字高位补零。代码通过双指针从个位开始逐位计算,使用位运算(&15)快速获取数字值,并用数组存储结果。循环终止条件是所有位数处理完毕且无进位。最终将数组反转并拼接成结果字符串。该方法避免了数字类型转换,直接处理字符串实现大数相加。
2025-12-28 22:57:01
20
原创 有效的括号
本文介绍了一种利用栈结构解决括号匹配问题的方法。算法通过遍历字符串,遇到左括号时入栈,遇到右括号时检查栈顶元素是否匹配,匹配则出栈,否则返回false。最后检查栈是否为空来判断整体匹配情况。代码实现中使用了Map对象存储括号对应关系,减少了代码量,提高了可读性。该方法简洁高效,时间复杂度为O(n),空间复杂度为O(n)。
2025-12-28 22:55:15
44
原创 全排列-js
为啥不是叫暴力搜索呢,重点在于对回溯状态的处理。回溯一般利用递归来实现穷举。设置两个数组:res存储结果数组,temp存储临时的一次结果。
2025-12-27 18:58:53
79
原创 最大子数组和-js版本
摘要:本文探讨了求解最大连续子数组和的动态规划解法。通过将问题分解为"以每个元素结尾的子数组最大和"的子问题,建立了状态转移方程dp[i] = max(dp[i-1]+nums[i], nums[i])。该方法避免了暴力解法中子问题重叠的问题,最终通过遍历dp数组找出最大值。给出的JavaScript实现代码展示了该算法的时间复杂度为O(n),空间复杂度为O(n)。
2025-12-27 18:56:48
208
原创 Javascript-Map、Set基本使用
本文整理了JavaScript中Map和Set的基本用法。Map用于存储键值对,可通过set()方法添加或修改值,支持keys()、values()、get()等方法,可使用forEach或for...of遍历。Set用于存储唯一值,支持add()、delete()等方法,同样可通过多种方式遍历。文章详细介绍了两种数据结构的声明、操作方法及遍历技巧,强调Map的值在前键在后的特性,以及Set的自动去重功能。这些基础用法需要经常复习使用。
2025-12-25 15:00:40
615
原创 Pinia 组合式上手
Pinia是Vue的状态管理库,相比Vuex更简洁高效。安装只需npm i pinia并在main.js中挂载即可。它支持组合式API写法,可以像写组件一样定义store,包含state(ref)、getter(computed)和action(function)。在组件中导入后直接调用store函数即可使用。Pinia还提供$reset、$patch等实用方法,支持状态重置和批量修改等功能。
2025-11-19 22:36:03
413
原创 Vue-router 多级路由
结合路由表,我们可以发现header 菜单栏为/home下的children,因此这里是二级路由,当我点击管理系统,发现该界面有侧边栏,于是侧边栏的菜单为/index下的children,属于三级路由;其中顶部导航和侧边导航可能还包括子选项,此时要对整个路由表抽丝剥茧,并且除了做导航栏的组件,还应将每个菜单选项也做成组件(只有做成单独的组件,每个菜单项才有自己单独的状态,便于做点击|hover--->展开或关闭)此时聪明的你一定能够发现,我们在做路由跳转的时候,传的是name值,那么这又是为何呢?
2025-10-14 21:07:54
592
原创 Vue-router 动态路由
本文介绍了Vue中的静态路由和动态路由实现方法。静态路由通过在routes.js中定义固定路由表,使用meta字段存储路由元信息,children字段定义子路由。获取路由表有两种方式:getRoutes()返回扁平化结构且能获取动态路由,options.routes保持原始层级结构但只能获取静态路由。动态路由通过addRoute()方法实现,根据权限动态添加路由。文章详细演示了两种路由方式的实现代码,包括侧边栏菜单的渲染、路由跳转和高亮效果,并通过模拟后端数据展示了权限路由的实现过程。
2025-10-13 21:13:08
799
原创 Vue-router 路由懒加载
本文介绍了Vue路由懒加载的两种写法及其优势。第一种是直接导入组件,第二种是通过箭头函数动态导入(懒加载)。懒加载能提升首屏加载速度,因为它只在访问对应路由时才加载组件,而非项目启动时就加载所有页面文件。文章建议在路由表中优先使用懒加载写法,并简要解释了其原理。
2025-10-12 20:19:43
307
原创 Vue-router 路由守卫篇
本文介绍了Vue Router的基础使用和路由守卫功能。基础使用部分展示了声明式(router-link)和编程式(router.push)两种路由跳转方式,通过示例代码详细说明了实现方法。重点讲解了路由守卫中的全局前置守卫(beforeEach)和后置守卫(afterEach),包括其参数(to、from、next)的使用方法,并通过登录验证的实际案例演示了如何通过路由守卫实现权限控制。文章还简要提到了其他类型路由守卫的适用场景,为后续深入学习路由功能奠定了基础。
2025-10-12 15:41:59
676
原创 Vue-router history解释篇
因此聪明的你又会发现,由于#在url里面叫做片段标识符,因此无论你是请求什么子页面,真正发送到服务器的都是前面的index.html,后面的子路径是由浏览器自己去做解析搜索出来的;据此,也可以推断出:若使用Hash模式,子路径不存在时,服务器也不会报404,因为传到服务器的地址永远是index.html。因此需要配置一个rewrite规则,我理解就是重定向,找不到的时候,都重定向给index.html,再去让浏览器做解析。聪明的你一定会发现,Hash模式下,url路径多了一层 #;
2025-10-11 22:03:33
419
1
原创 Vue-router配置篇----我的来时路
本文介绍了Vue路由的基本配置方法。首先需要在routes.js中定义路由表,包含path和component的对应关系;然后在index.js中使用createRouter创建路由实例,并导入路由表;最后在main.js中引入路由实例并通过app.use()注册。文章以清晰的三步走流程(定义路由表→创建路由实例→注册路由)讲解了Vue Router的基础配置,适合Vue初学者快速上手路由功能。作者表示将持续更新路由相关知识点,希望能帮助准备面试的开发者。
2025-10-11 21:21:57
371
原创 JavaScript入门到精通(一)---JS数组操作
在js里面,字符串为String类型,可用单引号或者双引号包括;遍历、过滤|查找、转换、分割|链接。
2025-09-02 15:02:21
204
原创 前端力扣100道~~第一题-两数之和
其实不难发现,当我们检索一个数字a时,只需要去检测另外一个数字是否为target-a。因此,我们可以通过一遍循环完成上述步骤:新开一个对象obj(哈希表)用来存储target-a与a对应的下标,一轮遍历数组下去,当遇到数字b=target-a时,直接输出b的下标,同时直接检索哈希表obj[b]得到a的下标。这题主要是一个简单水平,但是由于是前端题,因此不能再去用java、C、Python去刷题,而是用js。通常哈希表在js有两种展现形式,一种是obj对象,一种是map(map是严格的键值对形式)
2025-09-01 19:57:43
185
原创 大数据(一)各类基础知识
大数据主要是用于数据管理系统,所以要解决的是两个问题,一个是数据存储,一个是数据计算。一个SQLHive命令,最终也是会被解释成一个MapReduce命令的。这是大数据里面的计算框架,Map是指的映射,将一个资源映射到多台计算机上进行计算,Reduce将多个计算结果汇总成一个输出。解决的是前面说的计算问题。这是一个大数据存储技术,分布式存储,可以同时管理来自不同地方的数据源,对应解决的是我们前面说的数据存储的问题。这也是一个计算框架,里面内置了很多包,也能支持SQL,机器学习,图形处理等等。
2025-03-15 13:42:46
265
原创 vue(一)选项式和组合式API
使用 export default 将全局变量进行暴露,在js单页面内,使用this可以直接指向变量。v-model 是v-bind和v-on的语法糖,用于实现双向绑定。类似导入包一样,每个操作都有其对应的关键字(感觉写起来更加自由)v-if="aaa" 当aaa为真值时,组件才被渲染。v-bind:动态绑定一些属性,例如某些class类。v-on:click 其实就是@click。const 定义变量。ref()将变量的值包住。响应式:能在改变时触发更新的状态。function 用来定义函数。
2025-03-15 13:28:21
350
原创 第九次练习
给定n个整数(可能是负数)组成的序列a[1], a[2], a[3], …, a[n],求该序列的子段和如a[i]+a[i+1]+…+a[j]的最大值。这道题目有三种解法,常规暴力,分治和动态规划,在这里我用的是动态规划的方法。用一个b数组去存储最大的字段和。b[i]表示到a[i]截至最大的字段和。每组输入包括两行,第一行为序列长度n,第二行为序列。注意这个题是多组输入!输出字段和的最大值。
2023-05-01 10:55:35
247
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅