算法是所有程序的灵魂,你用编程来解决一个问题就是,想好怎么编程了,这个怎么编就是你的算法,算法分好坏。学习算法其实就是学习高手的程序是怎么编的,有些功能一般人编程可能要100句程序,高手可能30句搞定了。算法的好坏决定了程序运行的快慢以及出现的bug的概率,程序占用内存的空间,程序运行时候需要的内存空间等等。
总之,你学任何编程语言,学习的过程,各个例题都同时在学算法。算法就是实现一个目的方法,而编程语言是工具,你学会了方法就能用不同的工具来实现你的目的。
也就是说你学会了算法, 然后学会了不同的编程语言,你都可以用相同的算法不同的编程语言来实现你的目的。
补充:编程语言理论上可以实现大多数,但是每门语言都有各自的优势和缺点,所以在不同的领域不同的目的就用到不同的语言。但作为一个初学者,建议开始学一般工程师都用到的语言,相当于跟你说你想去国外先学个英语,英语学好了学其他的德语法语就比较容易了。因为,首先你学习英语的过程当中总结了一些学习语言的经验,然后你学的第一门外语和可能和其他一些外语有相似之处,还有你用心学的话你会知道如何找语伴,那么你学其他语言你也知道如何找语伴。
举个通俗易懂的c/c++的简单例子:
//计算 1+2+3+4+5+...+10上面是最蠢的方式计算1到10相加,但上面也是一个算法。
下面就是优化好后的算法,因为如果你要从1+2+3+....1000很明显只要把下面的程序里面的10改成1000就行了。这是一个很简单的算法解决简单的问题。
int main()还有,算法不只是数学计算,还涉及到逻辑计算,还有很多不是数学的,比如手机app里面有的应用做的某些用户体验不太好,比如反应慢(不一定是网络问题),可能就是算法不够好导致的。
以上。