很久很久以前,在公元前1世纪,《周髀算经》就作为中国最古老的天文学和数学著作之一,在算法历史上留下了浓墨重彩的一笔。作为“算经十书”之一,这部巨著采用当时朴实的“大白话”来确定天文历法,揭示了日月星辰、四季更替、气候变化的运行规律,为百姓的作息提供了强有力的依据。
自唐代起,与算法论述有关的书如雨后春笋般涌现,比如唐代的《算法》、宋代的《杨辉算法》、元代的《丁巨算法》、明代的《算法统宗》、清代的《开平算法》等。这些书籍都涉及古人对算法的探索,彰显着我们的老祖宗在算术方面的高瞻远瞩。
在现代的数学认知中,欧几里得算法被西方人公认为是史上第一个成型的算法。
经过几个世纪的发展,到公元825年,波斯数学家阿尔·花剌子密站在欧几里得这位巨人的肩膀上,第一次在数学上提出了“算法”这一概念——演算法(Algorithm),随后传到了欧洲。事实上,“Algorithm”这个词,直译便是“花剌子密的运算法则”,可见其为西方算法打下了怎样坚实的江山。
到了近代,在19世纪80年代,“软件之母”阿达·拜伦(Ada Byron)为巴贝奇分析机编写了人类史上的第一个算法程序——求解伯努利方程的程序。阿达关于算法的研究实现了计算机科学的本质性飞跃,以现在的观点来看,阿达首先为计算制作了“算法”,然后制作了“程序设计流程图”,这个珍贵的计划被认为是“第一套计算机程序”。