zoukankan      html  css  js  c++  java
  • 计算机速成课 第十三集 算法入门

    1. 算法简介

    • 定义:解决问题的具体步骤
    • 特点:即使结果一致,有些算法会更好,一般来说,所需步骤越少越好
    • 历史:算法一词来自波斯博识者:阿尔·花拉子密,1000 多年前的代数之父之一。

    2. 种类介绍

    • 记载最多的算法之一是「排序」
      • 使用场景:
        • 找最便宜的机票
        • 按最新时间排邮件
        • 按姓氏排联系人
      • 特点:排序有很多种方法
      • 举例
        • 冒泡排序
        • 意面排序
        • 选择排序
        • 归并排序
          • 算法复杂度 O (n * log n)
          • 比「选择排序」更有效率
        • 图搜索
          • 解决该问题的算法发明者:理论计算机科学伟人 Edsger Dijkstra
          • 该算法叫「Dijkstra 算法」
            • 原始版本,构思于 1956 年
            • 算法复杂度是 O(n ^ 2)
            • 几年后得到改进,变成 O(n log n + l)
          • 图搜索的算法有很多,每次使用谷歌地图时,类似 Dijkstra 的算法就在服务器上运行,找最佳路线

    3. 算法复杂度

    • 指:算法的输入大小和运行步骤之间的关系,表示运行速度的量级
    • 计算机科学家们把算法复杂度叫「大 O 表示法」
    • 举例
      • 算法复杂度 O(N^2) 效率不高
  • 相关阅读:
    svn出现黄色感叹号怎么办
    数据库设计三大范式
    windows server2008R2 64位 配置 mysql-8.0.15-winx64
    sqlquerystress
    锁表操作
    微软专用消息队列msmq的简单使用
    数据库上移和下移
    mvc全局时间输出格式化处理
    webapi jsonp处理
    泛型处理ToEntity
  • 原文地址:https://www.cnblogs.com/zxxsteven/p/15729380.html
Copyright © 2011-2022 走看看