zoukankan      html  css  js  c++  java
  • 各类算法总结

    动态规划

     

    动态规划题目总结

    二分法

    最简单的二分法:

      题目:array = [1, 3, 4, 5, 6],查找数组内值为num的下标index
      思路:在初始情况下, index<=right index=0, right=4
      一步一步尝试性地缩小index的查找的范围:
      由于数组是顺序性的,每次尝试获取left与right的均值,即mid = left + right >> 1,通过比较array[mid] 与 num的大小,检查index应该在mid的左边还是右边。

    1. 如果array[mid] > num right -= 1
    2. 如果array[mid] < num left +=1
    3. 如果array[mid] = num 下标就是num

    二分法总结:

    首先找到算法的输出,例如下标index

    找到输出的值的初始范围 : index <= right, 初始index = 0

    计算中位点, mid = left + right >> 1
    找出中位点与条件的关系,这一步比较抽象,通过比较中位点与条件,从而缩小left或者right,例如比较array[mid] 与 num的大小,后续缩小范围很好理解。

    二分法题目总结

  • 相关阅读:
    File操作
    集合
    几个python资料地址
    Case1-用list写shoppingcart
    字符串操作
    运算-Dictionary
    运算-list
    Python数据类型
    标准库和库导入
    Pycharm
  • 原文地址:https://www.cnblogs.com/yulianggo/p/13417744.html
Copyright © 2011-2022 走看看