使用sshfs挂载远程目录

在Linux下,有很多挂载远程(别的机器)目录的方法,例如NFS。

之前一直在用NFS,但是配置起来比较麻烦(需要N个C一个S),而且不太稳定(断网后无法卸载!),现在换sshfs,它基于Linux内置的ssh协议,只要又FUSE就能正常工作。

1、下载
到官网下载最新版本,当前是2.3
http://sourceforge.net/projects/fuse/files/sshfs-fuse/2.3/

2、编译、安装
tar -xzvf sshfs-fuse-2.3.t[......]

继续阅读

算法技术手册 – 排序 – 如何选择排序算法

实际上,没有绝对优秀的、应该始终采用的排序算法。

书上给出了一些选择不同排序算法的理由,写的非常好,抄录一下。

  • 元素很少:插入排序
  • 几乎有序:插入排序
  • 关注最差情况:堆排序(牢记:堆排序的最差时间复杂度依然是O(nlogn))
  • 平均较好:快速排序
  • 元素从密集范围取出:桶排序
  • 代码量小:插入排序

书上也在不同应用环境:字符串、浮点、几乎有序等情况下进行了测试,有兴趣的可以去翻阅。[......]

继续阅读

算法技术手册 – 排序 – 桶排序/哈希排序/散列排序

在前面的计数排序中,我们已经领略到了如何用空间换时间的方法,找到一种线性时间复杂度O(N)的排序算法。

计数排序的缺点也是非常明显的:一旦数据范围[0,k),中的k]相对于数据量N非常稀疏,计数排序的空间会非常大、时间消耗也会增大非常大。当然主要还是空间问题。

个人认为:桶排序 = 哈希排序 = 散列排序,基本思想是一样的。

于是桶排序/哈希排序应运而生,假设值域范围还是k,我们不去创建k个buckets,而是创建m个木桶,让N个元素通过哈系函数映射到这k个桶即可。这里还有一个[......]

继续阅读

Debian下安装DNS缓存 - dnsmasq

在某些情况下,DNS缓存能大幅提升网络速度,比如一般的爬虫系统,都会架设DNS缓存服务器。

dnsmasq是一款轻量级的DNS缓存服务器,配置非常简单。

1、安装
sudo apt-get install dnsmasq
2、配置
#配置DNSMASQ
sudo vim /etc/dnsmasq.conf
resolv-file=/etc/resolv.conf_dnsmasq

#编辑resolv.conf
sudo cp /etc/resolv.conf /etc[......]

继续阅读