2、计算机科学与数学基础:算法、形式语言与递归函数理论

计算机科学与数学基础:算法、形式语言与递归函数理论

在计算机科学和数学领域,数学语言以其精确和优雅的方式描述了计算复杂性和密码学的概念、结果和方法。本文将深入探讨算法、形式语言和递归函数理论的基础知识。

1. 算法基础
1.1 算法的定义与历史

算法是解决问题时需遵循的一组有限规则或程序。这个词源于波斯 - 阿拉伯科学家穆罕默德·伊本·穆萨·阿布·贾法尔·阿尔·花剌子模(Muhammed Ibn Musa Abu Dj´afar al Choresmi)的名字。在公元820年,他撰写了具有重大影响力的《论印度数字》(“On the Indian Numbers”),引入了十进制系统(包括数字零)。

直观上,算法在处理输入时,可能在有限步骤后成功将输入转换为解决问题的输出,也可能失败拒绝输入,甚至可能永远运行下去。判断算法是否会停止是一个难题,即停机问题。递归函数理论的一个基本结果表明,停机问题无法通过算法解决,这揭示了算法和计算机的局限性。

1.2 欧几里得算法示例

欧几里得算法是一个古老而重要的算法,用于确定两个整数 (m) 和 (n)((m ≤ n))的最大公约数 (gcd(n, m))。其伪代码如下:

EUCLID(n, m) {
    if (m = 0) return n;
    else return EUCLID(m, n mod m);
}

该算法通过递归调用自身,不断修改 (n) 和 (m) 的值,直到满足终止条件 (m = 0),此时 (n) 的值即为最大公约数。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值