Python 寻找局部最高点的实现

yipeiwu_com7年前Python基础

我就废话不多说了,直接上代码吧!

# 寻找局部最高点
# 输入input: 含有最高点高度的列表
# 输出output: 返回最高点的位置
# 时间复杂度: O(log(n))

def findHighSpot(input):
  iLen = len(input)
  mid = iLen//2 - 1 # Python中'/'为小数除法,'//'为地板除
  if input[mid-1] <= input[mid] >= input[mid+1]:
    return str(mid+1) # 默认返回最高点到第一个点之间的距离
  elif input[mid-1] > input[mid]:
    return findHighSpot(input[:mid//2])
  else:
    return 'mid+'+findHighSpot(input[mid//2:]) # 返回最高点距离中间点的距离

if __name__ == '__main__':
  input = [1, 2, 6, 5, 3, 7, 4]
  output = findHighSpot(input)
  print('output:', output) # output: 3

以上这篇Python 寻找局部最高点的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Laravel框架表单验证格式化输出的方法

Laravel框架表单验证格式化输出的方法

最近在公司的项目开发中使用到了 laravel 框架,采用的是前后端开发的模式。接触过前后端开发模式的小伙伴应该都知道,后端返回的数据格式需要尽可能搞得保证一致性,这样前端在处理时也方...

Python pycharm 同时加载多个项目的方法

Python pycharm 同时加载多个项目的方法

在pycharm中只能一个项目存在,想打开另一个项目只能建一个新窗口或者把当前窗口覆盖掉。 在pycharm中其实可以同时打开多个项目: 1、file->setting->p...

python函数局部变量、全局变量、递归知识点总结

函数局部变量 全局变量 及其作用域 #简单类型(int str等)变量的局部变量与全局变量及其作用域的关系 name = "xxx" #第一级顶头定义的变量都称为全局变量,其作用域从...

在python shell中运行python文件的实现

在python shell中运行python文件的实现

最近在学习flask开发,写好程序后需要在python shell中运行测试功能。专门抽时间研究了下,总结以防止以后遗忘。 这是测试文件的结构,python_example主文件夹,下面...

python matplotlib画图实例代码分享

python matplotlib画图实例代码分享

python的matplotlib包支持我们画图,有点非常多,现学习如下。 首先要导入包,在以后的示例中默认已经导入这两个包 import matplotlib.pyplot as...