算法开篇

来源:互联网 发布:管家婆软件导出excel 编辑:程序博客网 时间:2024/04/28 13:25

算法广义上是指计算机领域的对问题的思考方式以及解决步骤,是一种思路和逻辑性的体现。还有大家都知道的一句话:算法是程序的灵魂。

很多编程人员很注重使用编程语言,都没有学过算法,没有意识到算法的重要,因为一些算法被包装到一些编程序语言之中,这其中的算法往往只适用于本语言或工具而且只能解决某些问题,移植到别的情况下则无法使用,这难以开发程序员思维。如果没有自己的思维方式和编程逻辑,很容易对某种具体的技术或者工具产生依赖性,难以有自己的思想。随着时间的推移和技术的深入,你会发现不是具体的技术而是算法这些基本的东西成为了技术深入的软肋开发者尤其是编程初学者和入门者,应注重算法而不是工具,脚踏实地,打下坚实的基础,不然,你永远只能是一个所谓的“代码工人”。

很多程序员在最初学算法的时候(在大学的时候)都只注重算法的技术名词,函数,书本理论知识(好像是应付考试),而不注重算法的思路,以及算法的实现上。这往往导致对算法的理解不够深入,仅仅停留在理论上,自身能力没有提高。

本专栏是作者专门为学习算法以及算法交流而开的,并且从算法的最初知识数据结构及一些较简单算法开始谈起,每一个算法都是经过测试可用,但不能%100保证正确。每一个算法给出算法实现源码,可以免费下载。算法源码实验环境为Linux+vi+gcc+gdb+makefile,在什么平台下无所谓,因为算法不可能具有平台性的,但最好使用标准的C语言编译器,很多初学者喜欢使用vc6.0,但其并非标准c语言编译器,在其下编译成功的程序,到其他环境去编译却报错。比如forint i; i<n; i++)以及C语言可以使用引用(标准C是没有的,这是C++的功能),这些是要注意的。算法源码编程风格、变量命名等大致遵守linux内核编程风格,可能从事Windows下开发的程序员不是很习惯这种编程风格。

Linux C编程风格免费下载:http://download.csdn.net/detail/algorithm_only/3758362

作者给出算法虽经过测试可用,但由于水平及时间有限,难免会出错 ,希望发现错误的朋友告知一声(留言以及邮件均可)。

本专栏博文以及算法源码允许转载,但请保留出处。

原创粉丝点击