Everything you did must be paid one day
Nothing special but you
首页
分类
标签
关于
于寒冬中逆行
发表于
2019-04-17
2019-4-16 是我在嘉云升的最后一天,内心 OS: “交接了半个月,终于结束了 ……”, 假期、放空自己成了自己在最后这个下午所期待的唯一一件事。 一个人拎着一堆东西,还有程序员专属的电脑支架走在大街上,只是感觉比北京平时的夜晚更冷一些。然而当自己拎着一堆东西晃晃悠悠走上公交最后一排空闲的座位的时候,与往常不一样的是在原本不拥挤的公交车上我自己像个怪物一样被注视,我才意识到 ….. 我失业了 ...
分类于
随笔
more...
好物推荐
发表于
2018-10-27
不是氪金党,但有一颗氪金的心 HHKB-BT一个能够有效提升编码效率的神器,最开始对没有方向键的小键盘很有顾虑,就跟第一次使 Mac 是一样的。不过以经验来讲,任何不熟悉的东西,在拥有相关基础的情况下,磨合一到两周就可以了,尤其像键盘、电脑这种每天都长期接触的工具: 需要熟悉不同的键位,如最重要的 Command 键的排布,据说 HHKB 也是为了强化 Command 的可用性,所以才重排了它。 ...
分类于
随笔
more...
多路归并与胜者树败者树
发表于
2018-10-10
多路归并从 O(nk) 到 O(nlogn) 的优化切入点为在每次寻找最值上。我们可以利用堆、胜者树败者树这种每次调整堆拿到最值,只需要 O(logn) 复杂度的结构,这样我们就把多路归并的问题转嫁到了取最值的问题。(这里使用最小值举例) 堆N 个数求最值,可以使用大根堆或者小根堆来实现,使用堆排序的核心子程序,在构建堆完毕之后,取根,使用下一个数替换,并重新调整堆,得出下一个最值,并反复之。注意 ...
分类于
数据结构与算法
more...
堆排序
发表于
2018-10-07
前言堆排序实质上是选择排序的一种优化: 选择排序:O(n^2)将原始数据集合分为两部分 —— 有序区域和无序区,在无序区中寻找最小值,然后与无序区中第一个进行交换位置,这样不断的缩小无序区大小。 堆排序:O(nlog2^n)使用无序区创建大根堆,然后将根元素与最后一个元素交换位置,相当于不断地找最大元素,将它与无序区最后一个元素交换位置。同样,如果换作小根堆,则可以与选择排序相对应。(选择排序同 ...
分类于
数据结构与算法
more...
如何使用 Promise 封装一个控制并发量的请求库
发表于
2018-09-11
机缘巧合,碰到了一个控制并发量为 5 的需求(类似于微信小程序里一次只能同时上传十张图片的限制)。这里我们不讨论 Promise 对非 Promise 请求的封装,先假定它返回的是一个 Promise,先以 fetch 为例吧。 实现一第一反应想到的是肯定需要将 5 个之后的请求全部缓存起来,但遇到两个问题: 在前五个中存在 resolve 或者 reject 状态时,怎么触发缓存中的 Prom ...
分类于
ReactX
more...
快排其实很简单
发表于
2018-09-09
大学时期,老师只讲了课本上快排的一种实现方式,当时学的云里雾里,最近调研一下知乎上的一些实现方式,总结归纳了一下,发现还是非常简单的,只要清晰了具体概念,实现方式就可以随意发挥了(至于可读性,简易性当然各有千秋)。 什么是快排 从数列中挑出一个元素,称为“基准”(pivot), 重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(相同的数可以到任何一边)。在这个分 ...
分类于
数据结构与算法
more...
归并排序
发表于
2018-09-09
本来是要探究多路归并的最优解的,却无意间碰到了归并排序,那就深入了解一下吧。 先来了解一下什么是 分治法。 大体思路 将集合看作是 n 个长度为 1 的有序子表 两两归并,得到 n/2 个长度为 2 的子表 叶子结点即是数据的初态,根节点为排序之后的结果。由于分治法的实现应用常常以递归的形式出现,结合递归也是操作树结构最经典方式,由此可见递归没跑了。 递归一般由两个步骤组成: 递进过程 ...
分类于
数据结构与算法
more...
多路归并
发表于
2018-09-02
大概一年以前,接到同学面试头条之后讨论的请求,说是要在八分钟内手写出二路归并源码,我也没含糊,大概在八分钟内交出了源码,并且在 10 分钟内完成了边界调试,最终跑通了代码。只可惜最终同学因为没能现场写出这道决定性的题目被刷了下来。 二路归并/* * time complexity = O(n) */function twoWayMerge (arr1, arr2) { if (!arr1 ...
分类于
数据结构与算法
more...
上传模块文档
发表于
2018-08-15
上传模块说明文档@author: Pober Wong@time: 2018-08-15 背景2017.03 月是我入职嘉云升科技的第一个月。正逢公司核心项目 —— PGX-Cloud(本项目大致是一个以上传实验数据文件为起点,最终得到测序分析结果并配合各项数据供机构使用的平台)的第一次大版本升级,经过技术评估发现原有的上传模块设计架构不足以再支撑新的产品迭代(用系统架构方面的术语叫熵值已经达到了 ...
分类于
ReactX
more...
装饰器-探索箭头函数
发表于
2018-07-16
装饰器介绍初识装饰器,还是在 babel-preset-stage-0 提案法则中被支持,学过 Java 的想必能联想到注解。正如大家所知,装饰器修饰类是最简单的写法,直接按照高阶函数的方式来书写处理函数即可,关于对类体内部字段和方法的修饰,就没有那么简单了。关于装饰器的更多介绍和使用方式,见阮老师的 ES6 文档。 问题起始这篇文章的启发源自对防抖函数的封装探索,防抖函数的实现原理(deboun ...
分类于
JavaScript
more...
«
1
2
3
…
7
»
FEATURED TAGS
2015
回顾
算法
被遗弃
React
React-Native
翻译
JavaScript
继承
ES6
工具
ListView
Gank
Git
Squash
分支管理
Promise
ES5
CSS
Flex
哈利波特
Redux
English
Interpretation
压力
闲言碎语
历史
文化传统
休息
开发
瞎扯淡
timeline
人性
两性
病痛
工作
求职
数据结构
排序
好物
推荐
ReactX
工作效率
梦想
博客
为什么
房子
经济
KeyChains
Apple
Awesome
思考
人生
偶遇
清华
同桌
高阶组件
反向继承
源码
属性代理
Navigator
阴影
this
RecyclerView
Promotion
Android
重构
上传
嘉运升
工作,求职
人工智能
机器学习
Java
2017
Docker
Shadowsocks
科学上网
大学
2016
改变
Sketch
考研
语言基础
Lambda
Java 8
ABOUT ME
Nothing special but you