阿拉伯数字与中文数字的转换(javascript实现)

2016-04-06
阅读 3 分钟
25.2k
此为《算法的乐趣》读书笔记,我用javascript重新实现算法。 阿拉伯数字转中文数字 中文数字的特点: 每个计数数字都跟着一个权位,权位有:十、百、千、万、亿。 以“万”为小节,对应一个节权位,万以下没有节权位。 每个小节内部以“十百千”为权位独立计数。 “十百千”不能连续出现,而“万”和“亿”作为节权位时可以和其他...

递归方式穷举Google方程式(javascript实现)

2016-04-05
阅读 3 分钟
3k
此为《算法的乐趣》读书笔记,我用javascript重新实现算法。这个实现方案还很通用,应用了策略模式,把具体的方程计算隔离包装到了回调函数中。

动态规划解字符串编辑距离(C语言实现)

2016-04-04
阅读 2 分钟
5.6k
假设source有n个字符,target有m个字符,问题可定义为source[1...n]到target[1...n]的编辑距离。子问题可以定义为source前[1...i]到target前[1...j]的编辑距离(最优子结构)。因此,可以定义状态d[i,j]为从子串source[1...i]到子串target[1...j]之间的编辑距离。状态递推关系方式分为两种情况,分别是source[i]等于targ...

关于javascript中this的trick

2016-03-30
阅读 2 分钟
2.1k
var func = jane.display;func()TypeError: Cannot read property 'name' of undefined

javascript实现一些算法题

2016-03-28
阅读 3 分钟
4.3k
给定一个字符串,这个字符串为号和26个字母的任意组合。现在需要把字符串中的号都移动到最左侧,而把字符串中的字母移到最右侧并保持相对顺序不变,要求时间复杂度和空间复杂度最小。

koa访问mysql数据库操作

2016-01-09
阅读 4 分钟
18.3k
用restify与express有一年多了,一直在考虑什么时候上koa与es6,看到《一起学koa》项目,决定以此为契机行动起来。首先我要完成的是对数据库操作的封装,将以前项目实践中的代码迁移到koa上来,于是决定先完成《一起学koa》中的mysql任务。

node.js写爬虫程序抓取维基百科(wikiSpider)

2015-12-16
阅读 3 分钟
6.9k
思路一(origin:master):从维基百科的某个分类(比如:航空母舰(key))页面开始,找出链接的title属性中包含key(航空母舰)的所有目标,加入到待抓取队列中。这样,抓一个页面的代码及其图片的同时,也获取这个网页上所有与key相关的其它网页的地址,采取一个类广度优先遍历的算法来完成此任务。思路二(origin:cat...

vim, tmux, zsh 打造 node.js IDE

2015-11-19
阅读 2 分钟
8.4k
最近决定完全将工作平台切换到linux(我将ubuntu15.10装在Yoga上)上来,以前图省事,vim用得不多,在webstorm下装了vim插件,但总有些小问题,最后还是决定投身到开源平台来,呵呵!

nwjs(nodejs)写桌面应用(少儿英语学习项目经验总结)

2015-11-15
阅读 2 分钟
3.9k
最近上三年级儿子的英语老是记不住单词,而他们又在上科学课,老师让练打字。打字和英语学习都没太适合小家伙的实际情况,因此就花了一个周末写下了这个项目。

一道面试题,不用循环解循环问题

2015-10-10
阅读 1 分钟
3.5k
被作为『砖家』请去为一家公司把关面试题,这是一个他们比较得意的题目,我一看惊住了,咱也不会,呵呵!他们是想让面试者用递归来解这个问题,而我认为如果他们的目的是这样的话,这题没有任何意义。但若从考查发散思维的角度来看这个问题的话,让面试者想尽可能多的解决方法来解决它,到是一个不错的选择。

高性能网络服务器实现(C#封装IOCP)

2015-10-09
阅读 15 分钟
23.9k
以前发在博客园的文章,今天被人翻出来,发现这个在CSDN的下载量和评论都不错,因此搬过来与大家分享。为了方便大家下载源代码,我把代码托管到开源中国了,呵呵!有点懒,以前写博客都没坚持住,我在这边是当作日记功能,也就没把以前的东东整理过来。

图(Graph)的javascript实现

2015-10-01
阅读 4 分钟
4.3k
最近在看《数据结构与算法--javascript描述》,然后上npmjs.org去搜索,想找合适的库参考并记录下来,以备以后用时能拿来即用,最没有发现很合自己意的,于是就决定自己一一实现出来。这是《数据结构与算法--javascript描述》学习笔记的最后一篇了,本阶段学习圆满结束^_^。

二叉搜索树(BST)的javascript实现

2015-09-30
阅读 4 分钟
5.7k
最近在看《数据结构与算法--javascript描述》,然后上npmjs.org去搜索,想找合适的库参考并记录下来,以备以后用时能拿来即用,最没有发现很合自己意的,于是就决定自己一一实现出来。

散列(hashtable)的javascript实现

2015-09-26
阅读 3 分钟
3.4k
最近在看《数据结构与算法--javascript描述》,然后上npmjs.org去搜索,想找合适的库参考并记录下来,以备以后用时能拿来即用,最没有发现很合自己意的,于是就决定自己一一实现出来。

字典(Dictionary)的javascript实现

2015-09-25
阅读 2 分钟
8.6k
最近在看《数据结构与算法--javascript描述》,然后上npmjs.org去搜索,想找合适的库参考并记录下来,以备以后用时能拿来即用,最没有发现很合自己意的,于是就决定自己一一实现出来。

双链表(DoubleLinkedList)的javascript实现

2015-09-25
阅读 3 分钟
3k
最近在看《数据结构与算法--javascript描述》,然后上npmjs.org去搜索,想找合适的库参考并记录下来,以备以后用时能拿来即用,最没有发现很合自己意的,于是就决定自己一一实现出来。

单链表(LinkedList)的javascript实现

2015-09-18
阅读 3 分钟
6k
最近在看《数据结构与算法--javascript描述》,然后上npmjs.org去搜索,想找合适的库参考并记录下来,以备以后用时能拿来即用,最没有发现很合自己意的,于是就决定自己一一实现出来。

nodejs升级到4.0出错解决方案

2015-09-16
阅读 1 分钟
3.1k
通过搜索引擎,想查找139代表什么意思,未果。然后找升级注意事项的资料,发现了提到了C++模块使用着升级要小心,因此想到我的验证码使用了canvas。通过屏蔽canvas的调用,确定了原因所在。

c、linux学习笔记

2015-08-09
阅读 2 分钟
2.5k
直观映像,内存跨度 128M ~ 3G 。操作系统管理物理内存,每个进行都有独立的内存空间,程序打印的地址都是虚拟地址,其对应关系由操作系统内核管理。

计数排序、桶排序和基数排序

2015-08-05
阅读 3 分钟
17.5k
由于用来计数的数组C的长度取决于待排序数组中数据的范围(等于待排序数组的最大值与最小值的差加上1),这使得计数排序对于数据范围很大的数组,需要大量内存。计数排序是用来排序0到100之间的数字的最好的算法,但是它不适合按字母顺序排序人名。但是,计数排序可以用在基数排序中的算法来排序数据范围很大的数组。

mac 知识

2015-06-16
阅读 2 分钟
3.6k
包管理器--Homebrew 的安装 {代码...} brew 命令 {代码...} 中科大 homebrew 镜像 {代码...} 如果有问题,如下操作: {代码...} 安装 node-canvas (源代码安装) 1.pkg-config {代码...} 2.pixman {代码...} 3.libpng & export ... {代码...} 4.node-canvas {代码...} 5.如果出现错误 {代码...} 安装如下库: {代码...

zsh vim tmux (Ubuntu)

2015-06-14
阅读 3 分钟
6k
zsh 安装: {代码...} 切换默认shell: (cat /etc/shells) {代码...} 安装oh my zsh自动安装: {代码...} 手动安装: {代码...} 配置: {代码...} 主题(默认robbyrussell):.zshrc中,找到ZSH—THEME,就可以设置主题了。oh my zsh提供数十种主题,相关文件在~/.oh-my-zsh/themes目录下,可以随意选择,也可以自己调整配...

ubuntu 安装vmware tools

2015-06-11
阅读 1 分钟
2.4k
[链接]

node.js 编程 小知识

2015-06-10
阅读 1 分钟
2.8k
跨系统 node.js提供了 os.platform() 或者 process.platform 来检测当前系统 {代码...} 跨平台分隔符 {代码...}

ubuntu开机启动

2015-05-24
阅读 1 分钟
5.1k
Systemd——Ubuntu 15.04的服务管理器已经切换到Systemd; Unity 7.3——Unity桌面版本升级到7.3,包含很多小的优化; Compiz 0.9.12——窗口管理器升级到0.9.12; Linux Kernel 3.19Ubuntu 系统服务脚本目录: /lib/systemd/system/

Ubuntu下安装node canvas

2015-05-07
阅读 1 分钟
5k
在node.js下做验证码,基本就两种方案:node-ccap 和 canvas,安装都不容易,在windows下在装vs c++ ,故放弃,转战ubuntu, 搜索很久,以下方法简单可行。

mysql命令行操作大全

2015-05-04
阅读 1 分钟
2.3k
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码" grant select,insert,update,delete on . to user1@localhost Identified by "password1"; 增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。

MySQL获取所有分类和每个分类的前N条记录

2015-04-21
阅读 1 分钟
5.4k
比如有文章表 Article(Id,Category,InsertDate),现在要用SQL找出每种类型中时间最新的前N个数据组成的集合,一段不错的代码,留存备用,转自(loveyuki.com),感谢。

ubuntu 14.04 更新源、网络、语言环境等实用配置

2015-04-21
阅读 3 分钟
6.9k
Ubuntu 重启后 /etc/resolv.conf 里面设置的nameserver就被清空/etc/resolv.conf 其实是一个Link,指向 /run/resolvconf/resolv.conf;Ubuntu 有一个 resolvconf 服务,如果重启它,那么 /etc/resolv.conf 的内容会被修改成默认的样子。要自定义 nameserver,有以下2个办法:

CentOS6 安装 Redis

2015-04-17
阅读 1 分钟
31.8k
centos6安装redis-2.8.19.tar.gz 1、检查安装依赖程序 {代码...} 2、获取安装文件 {代码...} 3、解压文件 {代码...} 4、进入目录 {代码...} 5、编译安装 {代码...} 6、设置配置文件路径 {代码...} 7、修改配置文件 {代码...} 8、启动 {代码...} 9、查看启动 {代码...} 10、使用客户端 {代码...} 11.关闭客户端 {代码...}...