自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 vue2.x 单文件组件源码展示(仿组件库)实现

仿UI组件库的组件源码展示方案

2022-07-11 10:56:09 1644 2

原创 Vue2.x 自定义权限指令以及自动注册

自定义权限组件

2022-06-17 16:12:24 441 1

原创 Vue2.x 二次封装双向绑定Selector

二次封装ele组件 的简单思路

2022-06-17 10:05:29 742

原创 Vue2.x二次封装ElementUI Table

vue2.x二次封装Element UI-Table功能:配置渲染,分页集成,复选/单选,多级跨列,其他

2022-06-16 14:31:09 877

原创 vue3 Refs系列

目录一、ref二、isRef三、unref四、toRef五、toRefs六、customRef七、shallowRef八、triggerRef一、ref接受一个内部值并返回一个响应式且可变的 ref 对象。ref 对象仅有一个 .value property,指向该内部值。1.简单示例:<template> <div> 1.simpleRef value:{{simpleRef}}

2022-05-19 18:32:45 2492 1

原创 vue-router 回退不记录历史

目录一、场景说明二、处理方案1.router-link + history2.编程式跳转三、其他api跳转一、场景说明对于单页应用来说,经常会有登录后访问某个页面的场景。比如/index -> /login -> /page1但是在page1返回上一页时,会返回到登录页。回退路径为/page1-> /login -> /index因此需要进行跳过登录页的历史记录处理。二、处理方案1.router-link + his

2022-05-19 16:18:47 1137 1

原创 vue-router 安装与使用

目录一、安装二、使用1.初始化router/index.ts文件内容2.在根组件App.vue 定义路由渲染区域 router-view3.在main.ts中引入路由配置,并使用4.启动访问浏览器进行测试 /page1,/page2三、路由模式1.hash模式2.history模式四、路由导航1.router-link2.编程式导航 使用 router.push一、安装 npm i vue-router二、使用1.初始化router/..

2022-05-19 15:54:24 856

原创 vue3+vite+ts 自定义项目别名

默认配置文件内容如下import { defineConfig } from 'vite'import vue from '@vitejs/plugin-vue'// https://vitejs.dev/config/export default defineConfig({ plugins: [vue()]})1.使用resolve.alias内容修改如下会有如下报错内容找不到模块“path”或其相应的类型声明。找不到名称“__dirname”处理方案:

2022-05-19 13:38:41 1360 1

原创 创建第一个vue3项目

一、使用@vue/cli作为脚手架搭建1.全局安装@vue/cli,安装脚本如下:npm i @vue/cli -g或者yarn global add @vue/cli 2.安装完成后验证版本在v4.5以上PS D:\WorkSpace\web\workspace-vue> vue -V@vue/cli 5.0.4或者PS D:\WorkSpace\web\workspace-vue> vue --version@vue/cli 5.0.43.使用

2022-05-19 11:45:21 434

原创 H5调用APP拨号功能

1.使用标签<a>生成页面元素,如:<a id="phone" href="tel:XXX-XXX-XXXX"></a>2.调用安卓拨号功能时,触发上述元素点击事件即可,$('#phone').click();3.调用ios拨号功能时,使用2方法无法触发,则需要使用window.location.href =$('#phone').attr('href');...

2020-05-12 10:53:22 1198 1

原创 字符串匹配

描述:给定一个正在编辑的文本S以及一个模式字符串P,判断P是否在S中出现,并返回P在S中的位置。思路一:朴素算法,分别在S和P中设置指针指向第一个字符,若当前字符相同,则迭代比较后面字符;若不匹配,则令S的工作指针前移一位,指向P的指针从头迭代字符是否匹配。如图:令当前cur指向A,依次迭代比较S,P后续元素。找到B,C不匹配后,令当前cur后移,P从头迭代比较如图:B

2016-07-06 09:57:38 275

原创 回文字符串

描述:给定一个字符串,忽略大小写和标点符号,判断该句子是否是回文输入:Race e car输出:不是思路:因为忽略大小写因此先对整个字符串进行大小写调整,使用toupper(),或者tolower()函数。然后分别在第一个字符和最后一个字符设置迭代器,若两个迭代器都指向数字或者字符则比较。#include#includeclass Solution{public: b

2016-07-05 16:32:46 247

原创 删除有序链表中的重复节点2

描述:给定一个有序链表,若有一个以上相同节点,则将该元素值的节点均删除。输入:1->2->2->3->4->4->5输出:1->3->5思路:1.设置3个工作指针,pre=L,cur=L->next,re=L,cur指向当前指针,pre指向当前节点的前继节点,re指向迭代过程中添加节点的位置。2.迭代比较cur->data与cur->next->data,若相等,则令re=pr

2016-07-05 10:23:54 1689

原创 删除有序链表中的重复节点

描述:给定一个有序链表,删除重复元素使得每个数值只出现一次。输入:1->1->2->2->3输出:1->2->3思路:1.设置两个工作指针pre=L,cur=L->next,cur迭代指向当前节点,pre迭代指向当前节点的前继节点。2.当cur!=NULL时,比较pre->data与cur->data,若不等则令pre=cur,cur=cur->next.否则3.令pre-

2016-07-04 19:26:43 388

原创 链表分割

描述:给定一个无序链表,和一个定值KEY,要求小于KEY值的节点均在不小于KEY值节点的左边,且由KEY值分割的两段元素次序与原链表次序相同。输入:1->4->3->2->5->2,KEY=3输出:1->2->2->3->4->5思路1:直接在原链表上进行分割。1.申请一个工作指针r指向头节点,当r->next!=NULL时,令r=r->next,此时指针r指向原链表尾节点;申请临

2016-07-03 18:57:47 281

原创 单链表

单链表,顾名思义是线性表的链式存储结构,是用一组任意的存储单元存储线性表的数据元素(这个存储单元可以是连续的,也可以是不连续的)。单链表的单位是节点,每个节点包括两个域,其中存储数据元素信息的域称为数据域;存储直接后继存储位置的域称为指针域,指针域中存储的信息叫做指针。如图:节点的指针域存储的是指向下一个元素的地址,因此我们可以将链表画成用箭头相链接的节点的序列,节点之间的箭头表示指针。如

2016-06-29 16:22:59 1913

原创 唯一的元素

描述:给定一个无序的数组,其中数组只有一个数是唯一的,其余的数都是两两成对,找出这个唯一的数。输入:Array={1,2,3,2,1,5,3}。输出:5思路一:先将数组排序,然后从第一个元素开始,依次判断当前元素是否与后一位相同。若相同则前进两位,否则输出当前元素。时间复杂度为排序复杂度,空间复杂度为1。class Solution{public: int singleNumb

2016-06-28 20:39:20 557

原创 翻转方阵

描述:给定一个N*N的矩阵,要求按顺时针旋转矩阵九十度,并返回旋转后的矩阵。思路一:申请一个N*N空间,存储原始矩阵副本,原始矩阵的第i行是旋转九十度后的第(n-1-i)列,第j列是旋转九十度后的第j行。时间复杂度为平方级,空间复杂度为平方级。class Solution{public: void rotateMatrix(int &A[][],int n) { int **co

2016-06-27 19:54:15 365

原创 储水量

描述:给定一个非负数组,数组中的元素代表地势等高线,如Array={0,1,3,2,5,0,1};绘制柱形图,柱宽为1,如下图所示:褐色柱形表示地势,蓝色柱形表示能够储存的雨水量。返回4。分析:能够储存的雨水量高度与左右两侧最高地势有关,height=min(max_left,max_right)-当前地势高度。思路一:对每一个元素申请两个空间分别存储左边最高地势和右边最高地势,再

2016-06-27 17:32:11 639

原创 第K个排列组合

描述:给定一个集合set={1,2,……,n}。按字典序递增的顺序求第K个排列组合。输入:{1,2,3},K=2。输出:{1,3,2}。思路一:已知求下一个排列组合方法:next_permutation,先将集合元素按照递增排序,循环调用K-1次next_permutation,即可得到第K个排列。但是若K较大接近n!时,则会耗时过长。class Solution{public:

2016-06-27 09:44:26 1107 2

原创 全排列

描述:给定一个集合{1,2,……,n},求解这个集合的所有可能的排列组合。输入:set={1,2,3}输出:{1,2,3};{1,3,2};{2,1,3};{2,3,1};{3,1,2};{3,2,1};思路一:暴力法,使用n!-1次next_permutation算法分别求解下一次排列组合。class Solution{public: vector permutation(i

2016-06-26 20:59:11 168

原创 下一个较大排列组合

描述:给定一个无序数组,找到下一个按照该数组元素构成的较大的排列组合。若该数组已经是最大排列情况,则返回最小排列组合。输入:Array={3,1,2};输出:Array={3,2,1}。分析;该问题即要求对区间元素进行一次排列组合,使得新的字典序大于原来的排列。如对{3,6,2,9,8}进行排列。从尾部开始先找到前面小于后面的相邻的2和9。再从尾部找起,找出第一个大于2的数字8,于是交

2016-06-26 17:30:14 516

原创 和最接近定值的元组

描述:给定一个无序数组以及一个给定值,从该数组中找到三个元素值,使得三元素和最接近给定值。输入:Array={-1,2,-4,1},sum=1。输出:{-1,1,2}。思路:参考《相加为定值和的元组》,计算当前三元组的和与定值的步长,若步长缩小则更新结果。时间复杂度为平方级,空间复杂度为1。class Solution{public: int *threeSumClosest(

2016-06-26 15:18:56 287

原创 相加为定值和的元组

描述:给定一个无序数组,判断能否在数组中找到两个数使得和为给定值,返回所有这样的元组。输入:Array={-1,0,1,2,-1,4},sum=1。输出:(0,1),(--1,2)。思路一:暴力法,做两次循环,依次查找符合条件的二元组。时间复杂度为平方级,空间复杂度为1。#includeclass Solution{public: vector > twosum(int A[

2016-06-26 09:18:26 430

原创 寻找和的两个加数

描述:给定一个无序的数组,在数组中寻找两个位置,使得两个位置上的数的和为特定的值。函数返回两个数在数组中的索引。输入:Array={2,7,11,5};Sum=9;输出:index1=0,index2=1;思路一:因为需要返回原始数组中的索引,因此不可以进行排序工作。暴力法,利用两个循环查找和为定值的两个数。时间复杂度为平方级,空间复杂度为1。class Solution{pub

2016-06-25 16:40:11 361

原创 最长连续序列长度

描述:给定一个无序数组,如{7,10,1,9,5,3,4,2,8}。最长连续序列为{1,2,3,4,5},返回length=5。思路一:先排序,再以此以每一个元素为起点更新递增序列长度。时间复杂度为平方级。class Solution{public: int length(int A[],int n) { if(n==0) return 0; quickSo

2016-06-24 16:08:10 1042

原创 两个有序数组中间值

描述:给定两个有相同数序的数组,求其中中间值。思路一;使用二路归并思想,另外申请一个数组空间存储归并后的序列。时间复杂度线性,空间复杂度线性;#includeclass Solution{public: int median(int A[],int m,int B[],int n) { if(m==0&&n==0)return -1; if(

2016-06-24 14:42:01 870

原创 在部分有序数组中查找定值2

描述:给定一个有序数组,数组中可重复出现相同数字,然后数组经过旋转后,如{0,1,1,2,2,3,4,4,5,6}旋转后{4,5,6,0,1,1,2,2,3,4};在旋转后的数组中查找给定值key,并返回数组中key值索引,否则返回-1。思路一:依然使用暴力查找方法,依次从数组首部遍历至尾部,若查找到key值后,返回第一次出现的索引,否则返回-1;class Solution{publi

2016-06-24 13:21:01 204

原创 在部分有序数组中查找定值

描述:给定一个有序数组经过部分旋转,如{0,1,2,3,4,5,6}旋转后{4,5,6,0,1,2,3};给定key值,若查找成功则返回数组中key值元素索引,否则返回-1。思路一:暴力法,从数组头遍历到尾部,依次查找。class Solution{public: int search(int A[],int n,int value) { if(n==0)return -1;

2016-06-23 17:53:16 1191

原创 移除有序数组中的重复数字2

描述:给定一个有序数组,移除数组中重复出现三次或三次以上的数字。输入:A={1,1,2,2,2,3,3,3,3};输出:length= 6;A={1,1,2,2,3,3};思路一:由于数组是有序的,遍历数组,依次判断当前元素是否与左右元素相等,若等则跳过否则将当前元素加入添加位置。时间复杂度为线性,空间复杂度为1;class Solution{public: int remov

2016-06-23 10:36:14 512

原创 移除有序数组中的重复数字

描述:给定一个有序数组,移除数组中重复的数字并保证当前数字只出现一次,最后返回移除后的数组长度。     如:输入:array A={1,1,2}; 输出:length=2;A={1,2};思路一:申请一个新数组,并从第二位数组元素开始遍历,将每个元素与加入新数组的元素进行比较,若相等则跳过否则加入新数组中。时间复杂度为线性,空间复杂度为线性;class solution{publi

2016-06-23 10:06:13 2853

ACM机试试题

ACM的历年机试试题,题目、思想、伪代码以及最终源代码。

2014-04-02

基于安卓平台的校园通软件设计—毕业论文

基于安卓平台的校园通软件设计—毕业论文 有主要源代码和前中期检查完成任务

2014-04-02

空空如也

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

TA关注的人

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