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

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

2019-04-19 13:41:42

阅读数 119

评论数 0

【leetcode101】 JavaScript-对称二叉树

/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } */ /** * @p...

2019-04-15 18:07:43

阅读数 95

评论数 0

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

/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } */ /** * @p...

2019-04-15 14:09:07

阅读数 107

评论数 0

【leetcode733】JavaScript-图像渲染

var floodFill = function(image, sr, sc, newColor) { let Len1 = image.length, Len2 = image[0].length let dir = [[1, 0], [-1, 0], [0, 1], [0, -1]]...

2019-04-15 11:25:29

阅读数 90

评论数 0

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

let Single = (function() { let _instance = null function init(props) { return { publickMethod: function(){ }, value: props...

2019-04-09 21:24:57

阅读数 90

评论数 0

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

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

2019-04-09 20:58:39

阅读数 29

评论数 0

【DNS】DNS解析过程浅谈

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

2019-04-09 16:51:56

阅读数 31

评论数 0

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

var firstMissingPositive = function (nums) { nums = selectSort(nums.filter(item => item >= 0)) //吧小于零的数过滤掉,并排序 if (!nums.length) re...

2019-04-09 11:28:30

阅读数 23

评论数 0

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

var sortArrayByParityII = function (arr) { arr = quickSort(arr, 0, arr.length-1) let result = [], m = 0, n = 1 for(var i = 0; i < arr.le...

2019-04-09 10:28:43

阅读数 21

评论数 0

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

var findKthLargest = function(nums, k) { nums = quickSort(nums, 0, nums.length-1) console.log(nums[k-1]) return nums[k-1] }; function qui...

2019-04-09 10:26:25

阅读数 52

评论数 0

【JavaScript】封装一个jsonp函数

function jsonp({url, params, callback}) { return new Promise ((resolve, reject) => { let script = document.createElement ('script'); ...

2019-04-04 11:12:47

阅读数 60

评论数 0

【JavaScript】leetcode89,格林编码

思路:利用格林编码的对称性 /** * @param {number} n * @return {number[]} */ var grayCode = function(n) { function getCode(n) { if(n === 0) { retur...

2019-03-29 11:49:08

阅读数 68

评论数 0

【JavaScript】leetcode605,种花问题

var canPlaceFlowers = function(flowerbed, n) { var count = 0 for(var i = 0; i < flowerbed.length; i++) { if(flowerbed[i-1] !== 1 &...

2019-03-29 10:29:37

阅读数 141

评论数 0

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

第一次在react中使用单元测试,没想到遇到这么多坑 我使用create-react-app创建的react项目,单元测试工具Jest已经集成在项目中了,所以直接运行: npm run test 就可以运行测试样例 第一个坑:找不到测试样例,命令行提示如下图: 项目结构如下: 经过一番goo...

2019-03-26 20:20:36

阅读数 31

评论数 0

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

function fn(digits) { let hash = { 2: 'abc', 3: 'def', 4: 'ghi', 5: 'jkl', 6: 'mno', 7: 'pqrs', 8: 'tuv', 9: 'wxyz'...

2019-03-26 14:45:33

阅读数 52

评论数 0

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

通常浏览器缓存策略分为两种:强缓存和协商缓存,并且缓存策略都是通过设置 HTTP Header 来实现的。 强缓存(如果命中就不会去请求服务器,返回状态码200) 如何设置强缓存? 1,设置http头:Cache-Control,以客户端相对时间为准 Cache-Control:max-age=3...

2019-03-24 10:52:19

阅读数 335

评论数 0

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

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

2019-03-24 10:25:19

阅读数 58

评论数 0

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

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

2019-03-24 10:21:07

阅读数 125

评论数 0

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

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

2019-03-20 20:23:34

阅读数 102

评论数 0

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

看一个最简单例子: function x() { return new Promise((resolve, reject) => { setTimeout(() => { resolve('hello js') }, 30...

2019-03-11 17:02:45

阅读数 35

评论数 0

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