2015-02-05 veryyoung
利用Jrebel提升工作效率 老早就听说有Jrebel这款神器了,热部署,去官网看了看,license贵的离谱啊,300RMB per licence 只有用盗版咯。 阿弥陀佛 记录下流程。 1.安装插件 本人习惯用IDEA做开发(依然是盗版,罪过),找Jrebel的插件咯。 鄙视IDE的童鞋可以直接配置JVM,下面会提到的 在IDEA Setting里的plugins可以在线安装,鄙人所处网络环境堪忧,选择离线安装,这也是本人比较推荐的一种方式。 移步https://plugins.jetbrains.com/plugin/4441?pr=idea 下载适合IDEA版本的ZIP包 还是在IDEA Setting 继续阅读 »
2017-04-06 Eric Wang
缘起 每个人的大脑都有其自己的舒适区,比如说从家到公司开车上班,大脑会优先选择走熟悉的路线,而不是每天变个花样走陌生的路线,所以大脑其实是有惰性的,它总是会优先选择自己最熟悉、最不费力、也最简单的策略。长此以往,如果你不主动跳出舒适区的话,大脑自己是无法成长的。这一点小马(马克·扎克伯格,不是马云爸爸哦)也已经认识到了,不得不说,牛人就是牛人,尽管衣食无忧,此生不必奋斗了,但是依然在不断进步,让自己变得更加优秀。小马自己说“每年我都要给自己设立一个挑战,去学习新的东西,让自己在工作之外得到成长”。所以他特别为自己制定了每一年的挑战计划,列表如下: 2009年挑战每天戴领带上班 2010年挑战学习汉语 2011年挑战只吃自己亲手屠 继续阅读 »
2014-01-15 W.Y.
算法原理 希尔排序算法是按其设计者希尔(Donald Shell)的名字命名,该算法由1959年公布,是插入排序的一种更高效的改进版本。它的作法不是每次一个元素挨一个元素的比较。而是初期选用大跨步(增量较大)间隔比较,使记录跳跃式接近它的排序位置;然后增量缩小;最后增量为 1 ,这样记录移动次数大大减少,提高了排序效率。希尔排序对增量序列的选择没有严格规定。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: - 插入排序在对几乎已经排好序的数据操作时, 效率高, 即可以达到线性排序的效率 - 但插入排序一般来说是低效的, 因为插入排序每次只能将数据移动一位 算法思路: 1. 先取一个正整数 d1(d1 < n),把全部记 继续阅读 »
2016-12-21 Robin Wen
文/温国兵 人类跟动物最本质的区别,就是人会互联主观、联合想象、创造意义。 个人认为,提升效率的利器,应该在经济承受范围以内毫不犹豫地拥有。工作以来,一贯的宗旨就是为美好的事物花费。这份清单,于己于人,或多或少有所帮助。倘若读者因此受益,实在是荣幸不已。 本利器清单在不断更新中。另外,笔者还有一份 Wish List,里面的部分软件价格令人瞠目结舌,待笔者有条件购买之后再同步到此清单。 赠人玫瑰,手有余香。 硬件篇 iPhone 5s,2014 年光棍节给自己买的生日礼物,64G 银色顶配,~~现在依然是主力机~~ iPhone 7,256G 银色 4.7 寸顶配,用了一个星期,给亲人用了 iPhone SE 128GB 继续阅读 »
2018-09-04 Vaniot
算法:由输入经过一系列的计算步骤得到输出 排序问题:将无序的输入经过处理按照一定的孙徐输出 优秀的算法: - 正确性(思路清晰) - 高效(算法分析) - 易于实现(现成的算法) 算法的用处: - 生物信息学 - 网络(图论,字符串查找) - 信息安全(RSA..) - 优化(调度) 算法问题: - 图论(最短路径...) - LCS(动态规划...) - 拓扑排序 - 凸包 数据结构: C++ STL 优缺点 效率 难解问题: 并行算法 CPU效率 算法技术 算法的效率 渐近记号 问题规模量 时间T(n) 数组去重 继续阅读 »
2017-01-24 Robin Wen
文/温国兵 GitHub 简称 GayHub,又称世界上最大的同性交友平台,还称程序员的左右手。但由于众所周知的原因,GitHub 在没有翻墙的前提下,访问速度就像乌龟在漫步,让追求效率的程序员痛苦不堪,恨不得肉身翻墙,享受优质互联网服务的同时晒晒太阳,吹吹海风。 熟练的程序员基本上都使用 Terminal 或者命令行访问 GitHub。那么问题来了,怎么优雅地使用 GitHub 呢?我觉得应该分享分享。 © ZanXiong Feng/星夜/泼辣有图 终端加速 GitHub 方法的前置条件,一是购买了加速服务或者租用 VPS 搭建加速服务,二是系统是 macOS,三是终端是 iTerm,四是 Shell 是 zsh。 继续阅读 »
2016-07-28 Alex Sun
benchmark意为基准测试,常用来比较程序的性能。例如,比较不同方式拼接字符串的效率: js var a = 'hello' + 'world' var b = ['hello', 'world'].join('') 常用方法有: 运行相同的次数,用时少的效率高 运行相同的时间,运行次数多的效率高 1. 运行相同的次数 例如: ```js function f1() { return 'hello' + 'world' } function f2() { return ['hello', 'world'].join('') } function benchmark(name, fn) { var ti 继续阅读 »
2016-12-03 ruki
tbox之前提供的stackfull协程库,虽然切换效率已经非常高了,但是由于每个协程都需要维护一个独立的堆栈, 内存空间利用率不是很高,在并发量非常大的时候,内存使用量会相当大。 之前考虑过采用stacksegment方式进行内存优化,实现动态增涨,但是这样对性能还是有一定的影响,暂时不去考虑了。 最近参考了下boost和protothreads的stackless协程实现,这种方式虽然易用性和灵活性上受到了很多限制,但是对切换效率和内存利用率的提升效果还是非常明显的。。 因此,我在tbox里面也加上了对stackless协程的支持,在切换原语上参考了protothreads的实现,接口封装上参考了boost的设计,使得更加 继续阅读 »
2016-09-02 craneyuan
定义 希尔排序(英语:Shell sort),也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位 more 算法步骤 希尔排序通过将比较的全部元素分为几个区域来提升插入排序的性能。这样可以让一个元素可以一次性地朝最终位置前进一大步。然后算法再取越来越小的步长进行排序,算法的最后一步就是普通的插入排序,但是到了这步,需排序的数据几乎是已排好的了(此时插入排序较快)。 选择步长 按照选择的步长对序列进 继续阅读 »
2015-08-19 Mithrilwoodrat
到北京一个多月了,也渐渐适应了这边的节奏。其他的话不多说,总结一下关于技术发展的个人观点。 在这个现实世界,每天都有人在纠结用什么语言、工具、系统,很难找到一种工具可以满足使用者的各种不同需求,总会有所取舍。但是这些都是工作效率上的问题,就算效率不够高,能够做出来的东西始终会被做出来的。 继续阅读 »