自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git的一些常见操作和一些概念

git的一些常见操作和一些概念1.git版本管理工具中的四个概念(1)Workspace:工作区(2)Stage:暂存区(3)Repository: 仓库区(本地仓库)(4)Remote: 远程仓库其中工作区和暂存区在各个不同的分支是共享的。远程库--origin:git给远程仓库默认名称是origin2.git add添加文件到暂存区,git commit提交暂存区到仓库区3...

2019-06-24 22:32:44 198

原创 关于如何使用esLint

关于如何使用esLinteslint是一个对代码进行静态检查,对代码的规范有显著帮助。如何使用:首先全局下载npm install -g eslint// 之后就可以使用了eslint --init// 进行初始化后,会有许多选择,按自己的配置点确定就好// 之后会生成一个 .eslintrc.js的文件可以在里面配置一些东西// 例如在rules下"rules": {...

2019-06-24 22:25:09 358

原创 剑指offer(65)机器人的运动范围

(19.3.11)剑指offer(65)机器人的运动范围题目描述地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达...

2019-03-11 21:43:09 164

原创 剑指offer(64)矩阵中的路径

(19.3.11)剑指offer(64)矩阵中的路径题目描述请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串"bcc...

2019-03-11 21:42:38 141

原创 剑指offer(60)序列化二叉树

(19.3.11)剑指offer(60)序列化二叉树请实现两个函数,分别用来序列化和反序列化二叉树序列化就是一种遍历方式,如果遇到空节点就加入‘#’号代码如下:function TreeNode(x) { this.val = x; this.left = null; this.right = null;} var arr = [];function Ser...

2019-03-11 21:41:56 110

原创 剑指offer(58)按之字形打印二叉树

(19.3.11)剑指offer(58)按之字形打印二叉树题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。思路:就是BFS,while中套个for每次把外部的while取完代码如下: function TreeNode(x) { this.val = x; this....

2019-03-11 21:41:29 95

原创 剑指offer(57)对称的二叉树

(19.3.11)剑指offer(57)对称的二叉树题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。思路,比较pRoot的左子树与它的右子树相等,再递归左子树的左子树与右子树的右子树相等。右子树的左子树与左子树的右子树相等。代码如下: function TreeNode(x) { this.val = x;...

2019-03-11 21:41:07 83

原创 剑指offer(56)二叉树的下一个节点

(19.3.11)剑指offer(56)二叉树的下一个节点题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。1、有右子树的,那么下个结点就是右子树最左边的点;2、没有右子树的,也可以分成两类,a)是父节点左孩子(eg:N,I,L) ,那么父节点就是下一个节点 ; b)是父节点的右孩子(eg:H,...

2019-03-11 14:37:03 139

原创 剑指offer(55)删除链表中重复节点

(19.3.10)剑指offer(55)删除链表中重复节点题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5这题暴力即可function ListNode(x){ this.val = x; th...

2019-03-10 11:21:09 80

原创 剑指offer(54)链表中环的入口结点

(19.3.9)剑指offer(54)链表中环的入口结点题目描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。思路:设p1,p2两点,p1每次走一步,p2每次走两步,则当p1和p2重合时,p2已经走了一圈了。设p1走了x距离,则p2为2x,又p2多走一圈。设圈的长度为n。则2x = x + n,即x=n。则设p3=pHead,p3和p1每次走一步,当他们相遇...

2019-03-09 11:20:41 84

原创 剑指offer(53)字符流中第一个不重复的字符

(19.3.8)剑指offer(53)字符流中第一个不重复的字符题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。代码如下:var obj; funct...

2019-03-08 11:04:21 76

原创 剑指offer(52)表示数值的字符串

(19.3.7)剑指offer(52)表示数值的字符串题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100",“5e2”,"-123",“3.1416"和”-1E-16"都表示数值。 但是"12e",“1a3.14”,“1.2.3”,"±5"和"12e+4.3"都不是。代码如下://s字符串function isNumeric(s){

2019-03-07 10:59:18 83

原创 剑指offer(51)正则表达式匹配

(19.3.6)剑指offer(51)正则表达式匹配题目描述请实现一个函数用来匹配包括’.‘和’‘的正则表达式。模式中的字符’.‘表示任意一个字符,而’'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"abaca"匹配,但是与"aa.a"和"ab*a"均不匹配代码如下://s, pattern都是字符...

2019-03-06 21:37:51 115

原创 剑指offer(50)构建乘积数组

(19.3.5)剑指offer(50)构建乘积数组**题目描述给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]A[i+1]…A[n-1]。不能使用除法。思路:杨辉三角,只有自己是1代码如下:function multiply(array){ if(array.length==0) ...

2019-03-05 10:12:41 82

原创 剑指offer(48)把字符串转换为整数

(19.3.3)剑指offer(48)把字符串转换为整数题目描述将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。输入描述:输入一个字符串,包括数字字母符号,可以为空输出描述:如果是合法的数值表达则返回该数字,否则返回0示...

2019-03-03 09:57:40 97

原创 剑指offer(47)不用加减乘除做加法

(19.3.2)剑指offer(47)不用加减乘除做加法题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。代码如下:function Add(num1, num2){ while(num2) { var sum = num1^num2; // 没进位的加法 var jia = (num1&nu...

2019-03-02 09:40:02 84

原创 前端面经总结

HTML及浏览器HTML5新增一些标签语义化标签:nav; header; content; footer; article;videohttp的报文的主要组成请求报文:1,请求行。 该行包含了一个方法和一个请求的URL,还包含HTTP 的版本。2,请求头3,空行4,请求体。响应报文:1,状态行。 该行包含了请求资源的状况。2,响应头3,空行4,响应体。DOCTYPE...

2019-03-02 00:06:21 4997

原创 剑指offer(46)求1+2+---+n

(19.3.1)剑指offer(46)求1+2±–+n题目描述求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。数学问题:n*(n+1)/2代码如下:function Sum_Solution(n){ return n*(1+n)/2;}...

2019-03-01 09:14:34 72

原创 剑指offer(45)孩子们的游戏(圆圈中的最后剩下的数)

(19.2.28)剑指offer(45)孩子们的游戏(圆圈中的最后剩下的数)题目描述每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不...

2019-02-28 10:35:12 90

原创 剑指offer(44)扑克牌顺子

(19.2.27)剑指offer(44)扑克牌顺子题目描述LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,...

2019-02-27 11:24:10 100

原创 剑指offer(43)翻转单词顺序列

(19.2.26)剑指offer(43)翻转单词顺序列最近几天找实习,面经看得好慌。题目描述牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a stude...

2019-02-26 09:42:58 75

原创 剑指offer(42)左旋转字符串

(19.2.25)剑指offer(42)左旋转字符串题目描述汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!主要记住string对象中的方法如subs...

2019-02-25 12:42:53 68

原创 剑指offer(41)和为S的两个数字

(19.2.24)剑指offer(41)和为S的两个数字题目描述输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。输出描述:对应每个测试案例,输出两个数,小的先输出。这题较简单最笨的方法遍历,最后返回第一二个数即可,因为正方形的面积最大代码如下:function FindNumbersWithSum(ar...

2019-02-24 11:00:35 76

原创 剑指offer(40)和为S的连续正数序列

(19.2.23)剑指offer(40)和为S的连续正数序列题目描述小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? G...

2019-02-23 11:09:12 96

原创 剑指offer(39)数组中只出现一次的数字

(19.2.22)剑指offer(39)数组中只出现一次的数字题目描述一个整型数组里除了两个数字之外,其他的数字都出现了偶数次。请写程序找出这两个只出现一次的数字。最笨的方法就是遍历了。之后检查谁只出现代码如下function FindNumsAppearOnce(array){ var obj = {}; for(var i=0;i<array.length;...

2019-02-22 10:41:36 95

原创 剑指offer(38)二叉树的深度

(19.2.21)剑指offer(38)二叉树的深度题目描述输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。这题较简单,就是简单的从下往上时比较下左右高度。 function TreeNode(x) { this.val = x; this.left = null; this.right = ...

2019-02-21 10:41:38 85

原创 剑指offer(37)数字在排序数组中出现的次数

(19.2.20)剑指offer(37)数字在排序数组中出现的次数题目描述统计一个数字在排序数组中出现的次数。不得不说javascript做这种题真的很方便,函数都是封装好的。这题我认为思想就是找到第一个出现的数和最后出现的数位置相减+1即可。代码如下:function GetNumberOfK(data, k){ if(data.indexOf(k) == -1) ...

2019-02-20 10:26:05 104

原创 剑指offer(36)两个链表的第一个公共结点

(19.2.19)剑指offer(36)两个链表的第一个公共结点感觉涉及到算法优化的就做不出来了,哎做几个简单题吧。题目描述输入两个链表,找出它们的第一个公共结点。这题暴力双for的思想代码如下:function ListNode(x){ this.val = x; this.next = null;}function FindFirstCommonNode(pH...

2019-02-19 14:59:02 136

原创 剑指offer(34)第一个只出现一次的字符

(19.2.18)剑指offer(34)第一个只出现一次的字符题目描述在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).这题我没什么好办法,只有遍历,主要是js的对象遍历是按加入顺序的。代码如下:function FirstNotRepeatingChar(str){ ...

2019-02-18 17:13:20 90

原创 剑指offer(33)丑数

(19.2.18)剑指offer(33)丑数题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。这题丑数1,2,3,4,5,6,8,9这样。所以可以用一个数组存放丑数,这个数组中的数*2,*3,*5之中必定有一个新的最小的数刚好大于当前最大丑数。分析:...

2019-02-18 16:56:43 79

原创 剑指offer(32)把数组排序最小的数

(19.2.16)剑指offer(32)把数组排序最小的数题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。这题思路就是小的排前面如“12”,“145”,则“12”排前面,和“32”,“321”则321排前面。比较可以用a+b和b+a之后比较那种可能小a+...

2019-02-16 17:51:56 121

原创 剑指offer(31)整数中1出现的次数

(19.2.15)剑指offer(31)整数中1出现的次数快上学了,努力复习题目描述求出113的整数中1出现的次数,并算出1001300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)...

2019-02-15 15:10:51 101

原创 剑指offer(30)连续子数组的最大和

(19.2.14)剑指offer(30)连续子数组的最大和刷题刷题,题目描述HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最...

2019-02-14 14:49:54 94

原创 剑指offer(29)最小的k个数

(19.2.13)剑指offer(29)最小的k个数题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。这题涉及性能优化,我能写出的最好算法就是快排了,快排还是要写代码时还不熟悉,所以要多写记住它。function GetLeastNumbers_Solution(input, k){ var le...

2019-02-13 17:15:47 82

原创 剑指offer(28)数组中出现次数超过一半的数字

(19.2.12)剑指offer(28)数组中出现次数超过一半的数字状态开始回来可以开始写算法题了。题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。这题较简单,可以用“分形叶”的思想,但我做的时候没考虑那么多,用了个笨办...

2019-02-12 15:56:28 161 1

原创 剑指offer(27)字符串的排序

(19.2.11)剑指offer(27)字符串的排序重新开始做题感觉有点难度,但还是要坚持的。题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。这题思路就是全排序,不过要用字...

2019-02-11 22:11:42 112

原创 剑指offer(26)二叉搜索树与双向链表

(19.1.23)剑指offer(26)二叉搜索树与双向链表输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。用到了中序遍历最为简单的方法。需要一个lastNode指针。将root先左递归返回latNode,lastNode为左子树最后一个节点,中间做链接,之后再遍历右子树,把根lastNode = root 作为参数传入,...

2019-01-23 13:03:13 75

原创 剑指offer(23)二叉树的后序遍历

(19.1.22)剑指offer(23)二叉树的后序遍历输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。二叉搜索树满足如下例子1,取当前数组最后一位即为sequence[end].2,–i向前遍历直到找到一个位置设为j比sequeence[end]小的数3,从j开始遍历到start看是否有比se...

2019-01-22 16:25:02 192 1

原创 剑指offer(22)从上往下打印二叉树

(19.1.21)剑指offer(22)从上往下打印二叉树从上往下打印出二叉树的每个节点,同层节点从左至右打印。用到了bfs的思想,将第一行存入queue的队列中,while循环此队列长度,还有就出队列,并把此元素的左右子树入队列,循环:代码如下: function TreeNode(x) { this.val = x; this.left = null; thi...

2019-01-21 13:44:48 84

原创 Vue2.0用TypeScript+vuex重构项目

Vue2.0用TypeScript+vuex重构项目不得不说现在前端的技术更新越来越快了,一不学习就要给这个大环境淘汰了。Typescript是javascript的超集。本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。其中我认为最重要的就是静态类型检查了。写程序时项目若没有良好的设计思想,用js写的话就会“重构火葬场”。话不多说,直接干货:写在前面Vue我已经学习了一个学...

2019-01-19 21:00:44 4266 1

空空如也

空空如也

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

TA关注的人

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