美文网首页
算法学习笔记-基础开篇

算法学习笔记-基础开篇

作者: ___________枫林晚 | 来源:发表于2020-05-26 12:05 被阅读0次

算法定义

编写一段计算机程序一般都是事先一种已有的方法来解决某个问题。
这种方法大多和使用的编程语言无关---它适用于各种计算机以及编程语言。
是这种方法而非计算机程序本身描述了解决问题的步骤。
在计算机科学领域,我们用算法这个词来描述一种有限、确定、有效的并适用计算机程序来实现解决问题的方法。
算法是计算机科学的基础,是这个领域研究的核心。

基础问题

  • 三种基础的抽象数据类型:背包、队列、栈
  • 用数组、变长数组、链表实现背包、队列、栈的api。
  • 数据抽象并定义抽象数据类型(ADT)

欧几里得算法

  • 欧几里得算法的目的是找出两个数的最大公约数
  • 自然语言描述:计算两个非负整数p和q的最大公约数:若q是0,则最大公约数为p。否则,将p除以q得到余数r,p和q的最大公约数即为q和r的最大公约数。
// 欧几里得算法:获取两个数的最大公约数
uint gcd(uint p, uint q)
{
    if (q == 0)
    {
        return p;
    }
    
    uint r = p % q;
    return gcd(q, r);
}

相关文章

网友评论

      本文标题:算法学习笔记-基础开篇

      本文链接:https://www.haomeiwen.com/subject/eqymahtx.html