Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[自荐][开源]作为程序员一定要实现一遍算法 #1885

Open
douchuan opened this issue Aug 10, 2021 · 0 comments
Open

[自荐][开源]作为程序员一定要实现一遍算法 #1885

douchuan opened this issue Aug 10, 2021 · 0 comments

Comments

@douchuan
Copy link

douchuan commented Aug 10, 2021

项目缘起

本人做为从数学系转过来做开发的程序员,没有主修过《算法和数据结构》,一直想找个时间补上这一课,趁这个阶段不忙,就动手了。

通过这段时间对算法的学习,我感到受益匪浅,特别是图的部分,跟现实问题联系更紧密,感觉像打开了一扇窗,以此为基础可以做出许多有意义的项目。

任何编程语言都可以用来实现算法,常用的如Python,JavaScript,C++,我选择Rust实现我这一遍的算法,我爱Rust,这是特别好的编程语言,特别是在除错方面,Rust编译器能帮你非常多。当项目通过编译之后,你知道:80% OK了,可以放心的回家睡觉,养足精神之后,元气满满的开始第二天的工作。

用Rust实现算法,一开始真的非常难 (如果你不想体验这种煎熬,我建议选择一种支持GC的高级语言, Python或JavaScript, 开启你的算法之旅; 对于初学编程的同学,学会一门编程语言之后,往往就不知道该干什么了,而写算法是很好的编程进阶训练),当咬牙挺过来之后,会对Rust有更深刻的理解,特别是能熟练运用unsafe和lifetimes标注;但是,我感觉对Rust的学习是没有尽头的,当写的更多和读的更多之后,你总能预见有下一个高度需要去攀登,花这些时间也是值得的,因为通过一番努力之后,代码会更好。Rust真的是非常独特,没有哪种语言会给你这些很奇怪的感受。

关于Rust我还想多说一些,Rust社区为Rust准备的这组工具包,真是堪称豪华:单元测试,性能测试,fmt, clippy,随着项目迭代,这些工具保证你无忧于重构和一致性,让你毫无顾虑的大步前进。

如果你对开发是严肃的,一定要把算法实现一遍,这就像圣徒的麦加圣地,是一定要去的。

项目地址

@douchuan douchuan changed the title 作为程序员一定要实现一遍算法与数据结构 作为程序员一定要实现一遍算法 Aug 10, 2021
@douchuan douchuan changed the title 作为程序员一定要实现一遍算法 [自荐][开源]作为程序员一定要实现一遍算法 Aug 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants