个问题的严格方法，通常还需辅以某种程度上的运行性能分析。算法可以是纯理论的，也可以由一个计算机程序实现。理论算法通常根据复杂性分为不同类别；实现的算法通常经过剖析（）以测试其性能。请注意虽然一个算法在理论上有效可行，但是一个糟糕的算法仍会浪费宝贵的计算机资源。（更详细信息，参见算法信息论（））
开发.编写程序是以下步骤的一个往复过程：编写新的源代码，测试、分析和提高新编写的代码以找出语法和语义错误。从事这种工作的人叫做程序员。由于计算机的飞速发展，编程的要求和种类也日趋多样，由此产