Windows 下面的编辑器比起 Emacs 都差远了,所以最好还是在 Windows 下面也用 Emacs。
但是很麻烦:
- 下载 ntemacs,解压。
- 安装 DejaVu Sans Mono 字体。
- 复制 MinGW,并将 bin 文件夹添加到环境变量 PATH 中。
- 将 .emacs 文件复制到一个地方。
我将以上四步合成到一块了,打包成一个安装文件(谢谢黄轶唯同学帮忙打包),这样就方便多了。有需要的也可以下。里面的 .emacs 文件是我现在正在用的。
下载地址:这里
Windows 下面的编辑器比起 Emacs 都差远了,所以最好还是在 Windows 下面也用 Emacs。
但是很麻烦:
我将以上四步合成到一块了,打包成一个安装文件(谢谢黄轶唯同学帮忙打包),这样就方便多了。有需要的也可以下。里面的 .emacs 文件是我现在正在用的。
下载地址:这里
今天纠结于 swap 要显式地写出来还是写成函数。写成函数绝对要优美的多。
int main() { int i; int a = 1, b = 2, tmp; for(i = 1; i <= 100000000; i++) { tmp = a; a = b; b = tmp; } return 0; }
~~~ 一条分隔线 ~~~
void swap(int *a, int *b) { int tmp; tmp = *a; *a = *b; *b = tmp; } int main() { int i; int a = 1, b = 2; for(i = 1; i <= 100000000; i++) { swap(&a, &b); } return 0; }
显式的 swap 一次要 0.0000000035 秒。
函数的 swap 一次要 0.0000000057 秒。
我还试了一下 C++ 的 inline,发现没有速度的提升。
结论:用函数的 swap。这点速度损失没啥,然而一堆显式的 swap 不仅容易出错还极其影响心情。
就是拿着笔,放在纸上不抬起来,画出一些有意思的图形。
但是一般没有这么爽……一般是给你一幅图,让你一笔画出来。这也叫欧拉路径。
说起来特别简单。先找一个连接了奇数个点的点作为起点,把笔放下去。然后开始画,随便画。OK,成功了。
如果所有点都连接到偶数个节点,很好,画到最后又回到了起点。