代码之家  ›  专栏  ›  技术社区  ›  Tyler Gillies

算法和函数有什么区别[[关闭]

  •  16
  • Tyler Gillies  · 技术社区  · 15 年前

    11 回复  |  直到 15 年前
        1
  •  28
  •   riwalk    15 年前

    不。

    函数是计算机程序中的一段代码。

    算法是描述如何解决问题的抽象概念。

        2
  •  18
  •   Merlyn Morgan-Graham    15 年前

    计算机科学这个术语来源于数学术语,是数学概念的机器实现。

    算法是“一个精确的规则(或一组规则),指定如何解决某个问题”(来源:google.com,define:algorithm). 算法可以在计算机科学之外定义,并且没有确定的机器实现。你可以通过手写来“实现”它:)

    关键的区别在于,在计算机科学中,算法是抽象的,没有明确的机器实现。函数是具体的,并且有一个机器实现。

        3
  •  6
  •   Zach    15 年前

    算法是一组指令。

    在计算机程序设计中,函数是算法的实现。

        4
  •  4
  •   Jacob    15 年前

    算法是执行计算的一系列步骤(过程),而函数是参数和结果之间的数学关系。

    编程中的函数不同于函数的典型数学意义,因为它是一组实现计算函数的算法的指令。

        5
  •  3
  •   Davy8    15 年前

    算法描述了总体思想,而函数则是该思想的实际工作实现。

        6
  •  2
  •   David Brunelle    15 年前

    这可能几乎是一个哲学问题,但我要说的是,算法是一个问题的答案(或操作方法),作为一个函数,它本身并不一定回答一个问题。

        7
  •  2
  •   Daniel Asher    9 年前

    数学函数是一个算法的输入和输出的接口或说明。

    算法是一个精确的配方,它定义了实现一个函数的步骤。

    function func , method

    所以区别在于规范和定义。

    还有一个语义上的区别:算法试图提供问题的解决方案。它是以目标为导向的。简单的函数 -没有必要的目的论成分。

        8
  •  1
  •   Lay González    12 年前

    在某些情况下,算法很简单:

    函数:两个数之和。 int sum(int x, int y){ return x+y; }

    在其他情况下,它不是:

    功能:最佳棋式。 Move bestChessMove(State gameState){ //I don't know the algorithm. }

        9
  •  0
  •   jaam    8 年前

    算法是一种(可能是非正式的,但必须是精确的) 指令序列 . 函数是 将某些输入与特定输出相关联。函数实现和形式化算法。我们可以把“从a到b”形式化为 go(a)=b go(x,a)=b (w)/ x Wikipedia ,

    算法是一种有效的方法,可以在 有限的空间和时间,在一个明确的形式 计算函数的语言。

    go(a)=b (如果你愿意)

        11
  •  -1
  •   Jenia Be Nice Please    9 年前

    f(x) = x^ 2
    

    如果我让你数数 f(5000)

    但如果我有一个python方法,例如:

    x = math.pow(500, 2) # or whatever it is
    

    在这种情况下,每个操作的步骤本身都是完全定义的(在库中;)。

    推荐文章