初学Rust编程,写了个简单的算法,没想到Rust的性能相当彪悍。学习Rust一周,现在对这门语言爱不释手。就像最初用Python一样,用的越多惊喜越多。Rust的语法非常优美,估计只有C#能媲美Rust的语法,加上Rust的包管理功能Cargo使用起来非常顺手,让人用起来就像飞一样。
我们的测试算法很简单,先随机生成1千万行随机的整数,然后通过算法排序这一千万行数据,并将排序后的结果保存到文本文件。
首先我们生成随机数,并写入一个文件,代码如下:
1 | extern crate rand; |
执行程序耗时17秒,生成了大小为81M的随机数文件。
有了数据之后,我们将写我们的排序算法,这里采用位图排序。代码如下:
1 | extern crate rand; |
读取1千万行整数,进行排序,最后将排序结果写入另一文件,执行程序耗费12秒。性能相当感人,完全可以与C&C++一较高下。而且Rust的语法也非常容易了解,并且完全不用关心CG,我敢肯定5年后Rust会像现在的Go一样火。