![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javascript
Miya_Ye
这个作者很懒,什么都没留下…
展开
-
LeeCode 198 打家劫舍
由于不可以在相邻的房屋闯入,所以在当前位置 n 房屋可盗窃的最大值,要么就是 n-1 房屋可盗窃的最大值,要么就是 n-2 房屋可盗窃的最大值加上当前房屋的值,二者之间取最大值var rob = function(nums) { const len = nums.length; if(len === 0) return 0; let dp=[];...原创 2019-12-23 15:28:58 · 280 阅读 · 0 评论 -
LeeCode 70 爬楼梯
开始磕动态规划比如3节楼梯的走法=剩下2节楼梯的走法之和+走2步 及 走剩1节楼梯的走法之和+1步var climbStairs = function(n) { if(n == 1){ return 1; } let dp=[]; dp[1]=1; dp[2]=2; for(let index = 3;index<=...原创 2019-12-16 14:02:47 · 104 阅读 · 0 评论 -
LeeCode 53 最大自序和
var maxSubArray = function(nums) { let ans = nums[0]; let len = nums.length; let sum = 0; for(let index = 0;index < len;index++){ if(sum > 0){ sum +=nums[ind...原创 2019-12-11 15:23:56 · 113 阅读 · 0 评论 -
LeeCode49 字母异位词分组
var groupAnagrams = function(strs) { let hashmap = new Map() for(let index = 0;index < strs.length;index++){ let str = strs[index].split('').sort().join(); if(hashmap.has(...原创 2019-12-02 14:26:52 · 116 阅读 · 0 评论 -
LeeCode 50 Pow(x, n)
function divide(x,n){ if(n == 0) return 1; let subresult = divide(x,parseInt(n/2)) if(n&1 === 1){ return subresult*subresult*x; }else{ return subresult*subres...原创 2019-12-02 14:00:55 · 109 阅读 · 0 评论 -
LeeCode 415 两字符串相加
var addStrings = function(num1, num2) { let str =''; let carry = 0; let i = num1.length - 1; let j = num2.length - 1; while(i>= 0 || j >=0){ let n1 = i>= 0?num1[i...原创 2019-10-21 13:18:20 · 106 阅读 · 0 评论 -
LeeCode 40 组合2
var combinationSum2 = function(candidates, target) { candidates.sort((a,b)=>{return b-a}) let len = candidates.length let min = candidates[len-1]; let res=[]; let path =[]; ...原创 2019-10-18 10:50:06 · 154 阅读 · 0 评论 -
LeeCode 39 组合
var combinationSum = function (candidates, target) { candidates.sort((a,b)=>{return b-a}) let len = candidates.length let min = candidates[len-1]; let res=[]; let path =[]; ...原创 2019-10-18 10:19:11 · 135 阅读 · 2 评论 -
LeeCode 38 报数
原题解来自https://leetcode-cn.com/problems/count-and-say/solution/jsdi-gui-jie-jue-by-wo-shi-gao-xiao-de/看了这个哥们的解法,觉得特别好,顺便复习了下正则var countAndSay = function(n) { if(n==1){ return n.toStrin...原创 2019-10-16 10:49:05 · 123 阅读 · 0 评论 -
LeeCode 搜索插入位置 (复习了下二分法)
var searchInsert = function(nums, target) { let left = 0; let right = nums.length-1; if(target > nums[right]) return nums.length; while(left < right){ let mid ...原创 2019-10-09 10:00:14 · 124 阅读 · 0 评论 -
LeeCode 914 卡牌分组
function gcd(a, b) { return a % b === 0 ? b : gcd(b, a % b);}var hasGroupsSizeX = function(deck) { let len = deck.length; if(len <= 1 || len> 10000) return false; cons...原创 2019-10-08 11:15:00 · 115 阅读 · 0 评论 -
LeetCode 删除排序数组中的重复项
被这个程序的描述误导了有点,其实要求返回的是不重复的数组个数var removeDuplicates = function(nums) { let len = nums.length; let newLen = 0; for(let index =0; index <len;index++){ nums[newLen] = nums[index...原创 2019-09-18 16:50:52 · 98 阅读 · 0 评论 -
LeeCode 括号生成
var generateParenthesis = function(n) { if(n == 0) return [''] if(n == 1) return ["()"] let total = []; total[0] = ["None"]; total[1] = ["()"]; for(let i =2; i< ...原创 2019-09-16 11:38:31 · 121 阅读 · 0 评论 -
LeeCode 有效的括号
var isValid = function (s) { var map = { "(": ")", "[": "]", "{": "}" } var leftArr = [] for (var ch of s){ if (ch in map) leftArr.push(ch); //为左括号时,顺序...转载 2019-09-04 10:43:07 · 97 阅读 · 1 评论 -
LeeCode 删除链表的倒数第N个节点
头发蒙,今天不知道失败了多少次才做出来。。。双指针又是var removeNthFromEnd = function(head, n) { let first = head; let count = 0; let second = head; if(head.next == null){ return null }...原创 2019-09-03 17:37:06 · 80 阅读 · 0 评论 -
LeeCode 电话号码的字母组合
这个题目用到了reduce和map,还了解了下这种排列组合叫做笛卡尔卷积,以后这种组合的就可以多考虑用用reducevar letterCombinations = function(digits) { if(digits === '') return []; let hash = { '2':['a','b','c'], '3':[...原创 2019-08-28 11:13:19 · 143 阅读 · 0 评论 -
LeeCode 最接近三数之和
和昨天的那道题目很像,理解了后这道题20分钟就出来了var threeSumClosest = function(nums, target) { nums.sort((a,b) => a-b); let size = nums.length; let keepminus = undefined; for(let i...原创 2019-08-27 10:37:17 · 125 阅读 · 0 评论 -
Splice
最近在玩树~UX要求把树展示的结构拼成字符串,显示到另外一侧~挺好玩的用到了splice,之前看过,很强的一个数组方法啊~记录下语法array.splice(index,howmany,item1,.....,itemX)参数 Values参数描述index必需。规定从何处添加/删除元素。该原创 2016-12-10 15:47:17 · 290 阅读 · 0 评论 -
对象转url
代码中发get请求,有时候链接一串参数,后端要求,如果选项是ALL,就不要传递,比如告警级别有ALL,critical,major,minor,warnning这种,如果是ALL,后端是默认直接全表查找的,不需要传递参数,拼url的时候难免要一堆判断,看bootstrap-table里面如果参数是undefined,那么是不会编入到url中的,不想一堆判断了,写了个小函数处理仿照处理的下:Ob原创 2016-12-16 14:49:35 · 804 阅读 · 0 评论 -
遇上面试题的问题了
帮小黄调代码,有判断后端过来是数组还是对象,然后分别处理,她用isArray和isObject去判断,结果出问题,查了下数组也是对象的,想起来好像有个面试题就是这样,果然let obj = {};let arr = []; console.log(typeof obj === 'object'); //trueconsole.log(typeof arr === 'object');原创 2016-12-27 15:26:17 · 244 阅读 · 0 评论 -
tooltip学习
学习了幕客网上的toolTip。。。链接 点击打开链接做了课后作业,记录下 ToolTip效果 body { font-size: 18px; line-height: 1.8; font-family: "Microsoft YaHei", "微软雅黑";原创 2018-01-31 14:42:59 · 286 阅读 · 0 评论 -
vue 下input标签的required属性提示文字修改 (国际化问题)
我觉得input框require的时候,浏览器给的那种提示还挺好的~个人见解~但是国际化又是个问题,网上一般给出的是这样的<input type="text" required oninvalid="setCustomValidity('不能为空aaa')" oninput="setCustomValidity('')">但是里面的文字要国际化啊,试着用vue里面带的 $t("plac...原创 2018-05-09 11:01:46 · 25097 阅读 · 0 评论 -
还是记录下null和undefine,时间一长又忘了。。
区分的方式 下文转自 点击打开链接1.JS 中如何判断 undefinedJavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined 的判断。以下是不正确的用法:var exp = undefined;if (exp == undefined){ alert("undefined");}exp 为 null...转载 2018-05-08 11:13:17 · 258 阅读 · 0 评论 -
js 设计模式学习纪录2(模板 代理)
模板模式个人感觉所有设计模式体现的都是封装性~下面是其中一种,父类实现一部分,子类去改写,还有两种是1 父类不实现,只实现接口,子类去实现2 父类实现的模板方法,定义为final ,子类不可改写(有待查找怎么实现~)参考 https://www.cnblogs.com/xianyulaodi/p/5827821.htmlvar Interview = function(){}...原创 2018-10-29 10:59:27 · 87 阅读 · 0 评论 -
js 设计模式学习(单例 工厂 订阅 策略)
把好的例子总结(抄)了下单例下面这个例子就是只生成一个Mask,用到了闭包参考http://blog.jobbole.com/29454/var singleton = function( fn ){ var result; return function(){ return result || ( result = fn .apply( this...转载 2018-10-26 14:39:13 · 268 阅读 · 0 评论 -
ts和js class
这几天看老外的ts,要转成js 学习了下ts里面的类用tsc 转换了下ts 部分class Doit{ static hello:number=12321; showHello(){ console.log(Doit.hello) }}js 部分var Doit = /** @class */ (function () { function...原创 2019-04-19 15:33:33 · 1201 阅读 · 0 评论 -
算法 罗马数字转整数
今天撸的第二道题,动脑的感觉不错,照例写了一大坨,看来要好好看看算法了思路就是取两个字符,看是否在字典中,如果有,就累计,并且跳过两个走下一轮,如果没有就查单个字符的字典累计,不过虽然麻烦,但是跑起来用时比下面写的经典的低100多毫秒,(用了slice,后面才想起来还有substr。。。)var romanToInt = function(s) { let nums = [100...原创 2019-08-13 14:05:53 · 99 阅读 · 0 评论 -
算法 最长公共前缀
var longestCommonPrefix = function(strs) { let len = strs.length; let str = ''; if(len === 0){ return '' } if(len === 1){ return strs[0] } str = findPublicPrefix(strs[0],...原创 2019-08-14 14:44:56 · 107 阅读 · 0 评论 -
算法(Leetcode) 盛最多水的容器
木桶原则只循环一次,算法关键点是理解体积 受制于最短的板var maxArea = function(height) { let l = 0; let r=height.length - 1; let maxarea = 0; while(l < r){ maxarea = Math.max(maxarea,(r-l)*Math.m...原创 2019-08-14 14:47:52 · 172 阅读 · 0 评论 -
LeeCode 整数反转
var reverse = function(x) { let str = x.toString(); if(str.length == 0){ return 0; } let asc = str[0] let final = '' if(asc === '-' || asc === '+'){ st...原创 2019-08-23 16:05:40 · 105 阅读 · 0 评论 -
LeeCode 字符串转整数
var myAtoi = function(str) { let desStr = str.trim(); if(desStr.length === 0 ){ return 0; } let asc = desStr[0]; if(asc != '+' && asc != '-' && !/^\d...原创 2019-08-22 18:34:53 · 165 阅读 · 0 评论 -
LeeCode 三数之和
之前想用三重循环,或者用Hash的方法来解决这个问题,但是没办法去重后来还是参考了下别人的var threeSum = function(nums) { let num = nums.sort((a, b) => a - b); let res = [] if(num.length === 0) return res if(num...原创 2019-08-26 14:38:45 · 112 阅读 · 0 评论 -
常用的 Underscore函数 记下随后补充
搜索地址:点击打开链接 pluck_.pluck(list, propertyName) pluck也许是map最常使用的用例模型的简化版本,即萃取数组对象中某属性值,返回一个数组。var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}];_.转载 2016-10-29 16:01:15 · 308 阅读 · 0 评论