• python day100-[day16-20]-2 数据结构和算法


    算法

    20200306


    • 渐近时间复杂度的大O标记
     - 常量时间复杂度 - 布隆过滤器 / 哈希存储
     - 对数时间复杂度 - 折半查找(二分查找)
     - 线性时间复杂度 - 顺序查找 / 桶排序
     - 对数线性时间复杂度 - 高级排序算法(归并排序、快速排序)
     - 平方时间复杂度 - 简单排序算法(选择排序、插入排序、冒泡排序)
     - 立方时间复杂度 - Floyd算法 / 矩阵乘法运算
     - 几何级数时间复杂度 - 汉诺塔
     - 阶乘时间复杂度 - 旅行经销商问题 - NP
    
    • 常用算法
    穷举法 - 又称为暴力破解法,对所有的可能性进行验证,直到找到正确答案。
    贪婪法 - 在对问题求解时,总是做出在当前看来最好的选择,不追求最优解,快速找到满意解。
    分治法 - 把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题,直到可以直接求解的程度,最后将子问题的解进行合并得到原问题解。
    回溯法 - 回溯法又称为试探法,按选优条件向前搜索,当搜索到某一步发现原先选择并不优或达不到目标时,就退回一步重新选择。
    动态规划 - 基本思想也是将待求解问题分解成若干个子问题,先求解并保存这些子问题的解,避免产生大量的重复运算。
    
  • 相关阅读:
    HDU 1016 Prime Ring Problem
    POJ 1724 ROADS(bfs最短路)
    HDU 1033 Edge
    IE 兼容模式
    HDU 1263 水果
    数据结构之图详解
    继续过中等难度.0309
    排序的稳定性
    Java+7入门经典
    哈希链表及其变种
  • 原文地址:https://www.cnblogs.com/damahuhu/p/12426713.html
Copyright © 2020-2023  润新知