simplify the life

2017年3月30日 #

小议短网址系统的设计(有些时候,需要换个角度思考问题)

摘要: 前言 短网址,我想大家应该都见过,如果没有,试着点击下面这条链接 ,会跳到我的 GitHub 主页,但是它确实比原始链接 要短了一些。关于短网址的作用,这里不作描述,本文主要讲讲如何实现一个 简单的 短网址系统。 Leetcode 正好 "有一题" 与此有关,不妨一试。 思路 如果没有接触过短网址, 阅读全文

posted @ 2017-03-30 21:36 lessfish 阅读(1549) 评论(5) 推荐(0) 编辑

2017年3月2日 #

关于 parseInt 的一道有意思的面试题

摘要: 看完标题,入坑过的同学脑海里很快会浮现出这道经典面试题,没碰到过的同学不妨跟着楼主先来复习一遍 parseInt 的用法(主要参考 "MDN" )。 parseInt 是 JavaScript 中的一个全局函数(顶级函数),它会将给定的字符串以指定基数(radix/base)解析成为整数。 它的语法 阅读全文

posted @ 2017-03-02 11:32 lessfish 阅读(1939) 评论(5) 推荐(1) 编辑

2017年2月13日 #

【译】JavaScript Promise API

摘要: 原文地址: "JavaScript Promise API" 在 JavaScript 中,同步的代码更容易书写和 debug,但是有时候出于性能考虑,我们会写一些异步的代码(代替同步代码)。思考这样一个场景,同时触发几个异步请求,当所有请求到位时我们需要触发一个回调,怎么做?Promise 让一切 阅读全文

posted @ 2017-02-13 14:01 lessfish 阅读(1559) 评论(2) 推荐(2) 编辑

2016年11月11日 #

「post中文参数问题」以及「验证码自动识别备忘」

摘要: 前言 之前搞过几次模拟登录,都是模拟 post 后取到 cookie,之后便能用这个 cookie 愉快玩耍。这次碰到了验证码,其实只需手动登录一次,手动取到 cookie 后也能玩耍,不过 cookie 有效期不长,经常要换,十分麻烦。然后看到了这个库 "tesseract.js" ,由于我们的验 阅读全文

posted @ 2016-11-11 20:00 lessfish 阅读(1340) 评论(0) 推荐(0) 编辑

2016年8月15日 #

浅析列表页请求优化(history API)

摘要: 最近搞了下列表页请求的功能,并做了一下调研整理,记此文备忘。 列表页请求的功能到处可见,比如在博客园。 点击相应的页码,页面返回相应的内容,看上去似乎大同小异,但是一些小的细节还是可以区分优劣。 full load 公司原来的代码采用的是 full load 的方式,也就是每点击一次,页面完全加载。 阅读全文

posted @ 2016-08-15 07:59 lessfish 阅读(1755) 评论(6) 推荐(3) 编辑

2016年8月7日 #

如何装最多的水? — leetcode 11. Container With Most Water

摘要: 炎炎夏日,还是呆在空调房里切切题吧。 "Container With Most Water" ,题意其实有点噱头,简化下就是,给一个数组,恩,就叫 吧,从中任选两项 i 和 j(i 1); if (a[mid] = target) end = mid 1; else start = mid + 1; 阅读全文

posted @ 2016-08-07 13:42 lessfish 阅读(1938) 评论(1) 推荐(2) 编辑

2016年7月31日 #

HTML5 File API — 让前端操作文件变的可能

摘要: 前言 在 HTML5 File API 出现之前,前端对于文件的操作是非常有局限性的,大多需要配合后端实现。出于安全角度考虑,从本地上传文件时,代码不可能获取文件在用户本地的地址,所以纯前端不可能完成一些类似图片预览的功能。但是 File API 的出现,让这一切变成了可能。 跟着楼主由浅入深,了解 阅读全文

posted @ 2016-07-31 22:51 lessfish 阅读(57786) 评论(7) 推荐(15) 编辑

2016年7月24日 #

不一样的猜数字游戏 — leetcode 375. Guess Number Higher or Lower II

摘要: 好久没切 leetcode 的题了,静下心来切了道,这道题比较有意思,和大家分享下。 我把它叫做 "不一样的猜数字游戏",我们先来看看传统的猜数字游戏, "Guess Number Higher or Lower" 。题意非常的简单,给定一个数字 n,系统会随机从 1 到 n 中抽取一个数字,你需要 阅读全文

posted @ 2016-07-24 17:29 lessfish 阅读(2999) 评论(0) 推荐(1) 编辑

2016年6月3日 #

冒泡排序 & 选择排序 & 插入排序 & 希尔排序 JavaScript 实现

摘要: 之前用 JavaScript 写过 "快速排序" 和 "归并排序" ,本文聊聊四个基础排序算法。(本文默认排序结果都是从小到大) 冒泡排序 冒泡排序每次循环结束会将最大的元素 "冒泡" 到最后一位。 以 [1, 5, 2, 4, 3] 为例,O(n^2) 的复杂度,总共外层循环 5 次,第一次循环结 阅读全文

posted @ 2016-06-03 20:17 lessfish 阅读(2505) 评论(0) 推荐(2) 编辑

2016年5月10日 #

【算法之美】你可能想不到的归并排序的神奇应用 — leetcode 327. Count of Range Sum

摘要: 又是一道有意思的题目, "Count of Range Sum" 。(PS:leetcode 我已经做了 190 道,欢迎围观全部题解 ) 题意非常简单,给一个数组,如果该数组的一个子数组,元素之和大于等于给定的一个参数值(lower),小于等于一个给定的参数值(upper),那么这为一组解,求总共 阅读全文

posted @ 2016-05-10 20:15 lessfish 阅读(3854) 评论(7) 推荐(2) 编辑

【算法之美】求解两个有序数组的中位数 — leetcode 4. Median of Two Sorted Arrays

摘要: 一道非常经典的题目, "Median of Two Sorted Arrays" 。(PS:leetcode 我已经做了 190 道,欢迎围观全部题解 ) 题意非常简单,给定两个有序的数组,求中位数,难度系数给的是 Hard,希望的复杂度是 log 级别。回顾下中位数,对于一个有序数组,如果数组长度 阅读全文

posted @ 2016-05-10 10:34 lessfish 阅读(10882) 评论(4) 推荐(1) 编辑

2016年4月14日 #

一道有意思的编程思考题:【妖怪和和尚过河问题】

摘要: 无意中看到这么一道题,觉得很有意思,题目如下: 有三个和尚和三个妖怪要利用唯一的一条小船过河,这条小船一次只能载两个人,同时,无论是在河的两岸还是在船上,只要妖怪的数量大于和尚的数量,妖怪们就会将和尚吃掉。现在需要选择一种过河的安排,保证和尚和妖怪都能过河且和尚不能被妖怪吃掉。 看完题目,首先想到的 阅读全文

posted @ 2016-04-14 20:23 lessfish 阅读(3818) 评论(19) 推荐(3) 编辑

2016年4月1日 #

博客园的模拟登录实现以及加密方式浅析

摘要: 此文起因 有园友私信我探讨关于博客园模拟登录的事,年前也玩了一段时间的 node(详情可以参考我的 node 项目集 厚着脸皮求 star),做之前想的可能只是一次简单的 post,尝试下来完成后还是有了不少收获。为了能让后人有个参考,遂成此文。 登录抓包 闲话少说,既然是模拟登录,我们来看看登录过 阅读全文

posted @ 2016-04-01 02:30 lessfish 阅读(3069) 评论(11) 推荐(15) 编辑

2016年3月21日 #

闲扯 『 document.write 』

摘要: 初春的晚上,闲来无事,聊聊 document.write 方法。 document.write 使用方式非常简单,把 "字符串化"(不好意思,这可能是我自己创造的名词)的 html 代码当做参数传入就 ok 了,我并不打算讲它的基本用法,可以参考以下链接: "HTML DOM write() 方法" 阅读全文

posted @ 2016-03-21 20:35 lessfish 阅读(2124) 评论(12) 推荐(1) 编辑

2016年3月7日 #

还记得高中的向量吗?leetcode 335. Self Crossing(判断线段相交)

摘要: 传统解法 题目来自 "leetcode 335. Self Crossing" 。 题意非常简单,有一个点,一开始位于 (0, 0) 位置,然后有规律地往上,左,下,右方向移动一定的距离,判断是否会相交(self crossing)。 一个很容易想到的方案就是求出所有线段,然后用 O(n^2) 的时 阅读全文

posted @ 2016-03-07 20:54 lessfish 阅读(1448) 评论(0) 推荐(2) 编辑

2016年3月1日 #

get与post需要注意的几点

摘要: 在面试或者笔试时,经常会被问到 HTTP 方法中 get 和 post 的异同点。本文简单整理归纳了一下,以备忘。 1、"get/post" VS "web 中的 get/post" 一些 web 相关职位的面试,无论有没有提 web,面试中的 get/post,一般就是指 web 中的 get/p 阅读全文

posted @ 2016-03-01 22:53 lessfish 阅读(4677) 评论(13) 推荐(8) 编辑

2016年2月22日 #

更好的逐帧动画函数 — requestAnimationFrame 简介

摘要: 本文将会简单讲讲 requestAnimationFrame 函数的用法,与 setTimeout/setInterval 的区别和联系,以及当标签页隐藏时 requestAnimationFrame、setTimeout 各自的后续渲染。 requestAnimationFrame 说到 requ 阅读全文

posted @ 2016-02-22 21:22 lessfish 阅读(3588) 评论(0) 推荐(0) 编辑

2016年2月21日 #

45个JavaScript小技巧

摘要: 原文地址 这篇文章的质量个人感觉一般(有些甚至有些无厘头,比如第五点,构造函数的使用,直接被我去掉了), 建议过一遍就好 。详细的翻译版本可以参考 "JavaScript奇技淫巧45招" 声明变量时别忘记 相等比较请用 而不是 、`null false NaN ''`(空字符串)都是假值 行末加封号 阅读全文

posted @ 2016-02-21 17:20 lessfish 阅读(839) 评论(0) 推荐(0) 编辑

2016年2月20日 #

eval解析JSON字符串的一个小问题

摘要: 之前写过一篇 "关于 JSON 的介绍文章" ,里面谈到了 JSON 的解析。我们都知道,高级浏览器可以用 API 将一个 JSON 字符串解析成 JSON 数据,稍微欠妥点的做法,我们可以用 函数。 var str = '{"name": "hanzichi", "age": 10}'; var 阅读全文

posted @ 2016-02-20 10:35 lessfish 阅读(5779) 评论(6) 推荐(0) 编辑

2016年2月3日 #

JavaScript中sort方法的一个坑(leetcode 179. Largest Number)

摘要: 在做 "Largest Number" 这道题之前,我对 sort 方法的用法是非常自信的。我很清楚不传比较因子的排序会根据元素字典序(字符串的UNICODE码位点)来排,如果要根据大小排序,需要传入一个比较函数。 先来看这道题,给你一个数组,让你把数组元素拼接起来,求能拼得的最大的数。如果只有两个 阅读全文

posted @ 2016-02-03 20:41 lessfish 阅读(1901) 评论(2) 推荐(0) 编辑

导航