2 AC_greener

尚未进行身份认证

web Developer github:https://github.com/AC-greener

等级
TA的排名 2w+

【JavaScript】前端必会的代码整理(包含leetcode题解)

更多leetcode题解在我的github上面:点击这里后面还会持续进行更新~常用数据结构和算法这些代码都在leetcode上AC了题目二分查找constbinarySearch=function(nums,target){if(nums===null||nums.length===0){return-1}letleft=0,...

2019-04-19 13:41:42

【leetcode101】 JavaScript-对称二叉树

/***Definitionforabinarytreenode.*functionTreeNode(val){*this.val=val;*this.left=this.right=null;*}*//***@param{TreeNode}root*@return{boolean}*/vari...

2019-04-15 18:07:43

【leetcode-102】JavaScript版本 二叉树层虚遍历

/***Definitionforabinarytreenode.*functionTreeNode(val){*this.val=val;*this.left=this.right=null;*}*//***@param{TreeNode}root*@return{number[][]}*/va...

2019-04-15 14:09:07

【leetcode733】JavaScript-图像渲染

varfloodFill=function(image,sr,sc,newColor){letLen1=image.length,Len2=image[0].lengthletdir=[[1,0],[-1,0],[0,1],[0,-1]]letvisited=[]letcolor=image[sr][sc]...

2019-04-15 11:25:29

【JavaScript】设计模式-单例模式

letSingle=(function(){let_instance=nullfunctioninit(props){return{publickMethod:function(){},value:props.value}}returnfunction(props){if(...

2019-04-09 21:24:57

【JavaScript】设计模式-发布订阅模式

varObserver=(function(){var_message={}return{//将订阅者注册的消息推到消息队列中,接收的参数时消息的类型和如何处理消息regist(type,fn){if(typeof_message[type]==='undefined'){_message[type]=...

2019-04-09 20:58:39

【DNS】DNS解析过程浅谈

DNS,域名服务,负责吧域名解析成IP。理论上讲一个全世界使用一个域名服务器就够了,但为了防止服务器过载,或者服务器出现故障,导致整个网络瘫痪。DNS被设计成一个分布式的数据库系统,即使单个计算机除了故障,也不会妨碍DNS系统的正常运行。在DNS请求报文中,为了减少开销和加快速度,使用的是UDP用户数据报方式域名服务器是一个树状的层次结构1,根域名服务器,根域名服务器知道所有顶级域名服务...

2019-04-09 16:51:56

【leetcode 41】JavaScript版-缺失的第一个正数

varfirstMissingPositive=function(nums){nums=selectSort(nums.filter(item=>item>=0))//吧小于零的数过滤掉,并排序if(!nums.length)return1for(leti=0;i<nums.length;i++){if...

2019-04-09 11:28:30

【leetcode922】JavaScript版 按奇偶排序数组 II

varsortArrayByParityII=function(arr){arr=quickSort(arr,0,arr.length-1)letresult=[],m=0,n=1for(vari=0;i<arr.length;i++){if(arr[i]%2===0){//偶数res...

2019-04-09 10:28:43

【leetcode215】JavaScript版 数组中的第K个最大元素

varfindKthLargest=function(nums,k){nums=quickSort(nums,0,nums.length-1)console.log(nums[k-1])returnnums[k-1]};functionquickSort(arr,left,right){letindexindex=pa...

2019-04-09 10:26:25

【JavaScript】封装一个jsonp函数

functionjsonp({url,params,callback}){returnnewPromise((resolve,reject)=>{letscript=document.createElement('script');window[callback]=function(data){//声明这个全局函数,scrip...

2019-04-04 11:12:47

【JavaScript】leetcode89,格林编码

思路:利用格林编码的对称性/***@param{number}n*@return{number[]}*/vargrayCode=function(n){functiongetCode(n){if(n===0){return['0']}if(n===1){return['0',...

2019-03-29 11:49:08

【JavaScript】leetcode605,种花问题

varcanPlaceFlowers=function(flowerbed,n){varcount=0for(vari=0;i<flowerbed.length;i++){if(flowerbed[i-1]!==1&&flowerbed[i]===0&&flowerbed[i+1]!==...

2019-03-29 10:29:37

【react】react单元测试初探,小白的采坑之路

第一次在react中使用单元测试,没想到遇到这么多坑我使用create-react-app创建的react项目,单元测试工具Jest已经集成在项目中了,所以直接运行:npmruntest就可以运行测试样例第一个坑:找不到测试样例,命令行提示如下图:项目结构如下:经过一番google,发现react项目的测试文件夹必须放在src下面,且测试的文件名必须是:下划线下划线tes...

2019-03-26 20:20:36

【leetcode】电话号码组合(JavaScript版)

functionfn(digits){lethash={2:'abc',3:'def',4:'ghi',5:'jkl',6:'mno',7:'pqrs',8:'tuv',9:'wxyz',}leta=[]digits.split('').forEach(item...

2019-03-26 14:45:33

【JavaScript】浏览器的缓存策略:强缓存和协商缓存

通常浏览器缓存策略分为两种:强缓存和协商缓存,并且缓存策略都是通过设置HTTPHeader来实现的。强缓存(如果命中就不会去请求服务器,返回状态码200)如何设置强缓存?1,设置http头:Cache-Control,以客户端相对时间为准Cache-Control:max-age=3600(单位是秒)。2,expires(http1.0产物)会将资源的实效日期告知客户端。Exp...

2019-03-24 10:52:19

【http】简述TCP三次握手和四次挥手

三次握手是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。可以想象两人用对讲机交谈。A:我准备好了你准备好了吗,收到请回答。B:收到收到,我也准备好了,收到请回答。A:收到收到四步挥手客户端:“兄弟,我这边没数据要传了,咱关闭连接吧。”服务端:“收到,我看看我这边有木有数据了。”服务端:“兄弟,我这边也没数据要传你了,咱可以关闭连接了。”客户端:“好嘞。...

2019-03-24 10:25:19

【计算机网络】tcp udp的特点和区别

UDP协议面向无连接UDP是不需要和TCP一样在发送数据前进行三次握手建立连接的UDP的不可靠性UDP因为没有拥塞控制,一直会以恒定的速度发送数据。即使网络条件不好,也不会对发送速率进行调整。这样实现的弊端就是在网络条件不好的情况下可能会导致丢包但是优点也很明显,在某些实时性要求高的场景(比如电话会议,直播)就需要使用UDP而不是TCP。TCP面向连接,只有确认通信端存在...

2019-03-24 10:21:07

【JavaScript】给定一个字符串,请统计字符串中出现最多的字母和次数

//给定一个字符串,请统计字符串中出现最多的字母和次数functionfn(str){varhash={}for(leti=0;i<str.length;i++){if(hash[str[i]]){hash[str[i]]++}else{hash[str[i]]=1}}le...

2019-03-20 20:23:34

【JavaScript】 异步的终极方案async,await

看一个最简单例子:functionx(){returnnewPromise((resolve,reject)=>{setTimeout(()=>{resolve('hellojs')},3000)})}asyncfunctiontest(){letn=awaitx()console.lo...

2019-03-11 17:02:45

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。