Python 寻找局部最高点的实现

作者:randomparty 时间:2021-05-10 14:44:00 

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


# 寻找局部最高点
# 输入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

来源:https://blog.csdn.net/RandomParty/article/details/80212903

标签:Python,局部,最高点
0
投稿

猜你喜欢

  • 操作设计要素

    2011-03-04 16:23:00
  • Python根据当前日期取去年同星期日期

    2021-09-14 15:01:48
  • Codeigniter发送邮件的方法

    2023-11-15 05:08:25
  • Python Django 封装分页成通用的模块详解

    2023-06-24 13:56:15
  • python向已存在的excel中新增表,不覆盖原数据的实例

    2022-04-26 15:16:51
  • python 如何快速复制序列

    2022-12-04 05:20:36
  • python得到windows自启动列表的方法

    2023-12-18 14:49:13
  • python正则表达式匹配不包含某几个字符的字符串方法

    2023-06-11 16:52:45
  • asp如何显示全部的环境变量?

    2010-06-08 09:34:00
  • HTML5 Web Storage全解析

    2010-06-26 13:06:00
  • “语法错误 (逗号) 在查询表达式id=20, 21”,怎么处理这个逗号?

    2009-09-18 14:52:00
  • 如何利用Redis作为Mybatis的二级缓存

    2023-07-05 10:51:11
  • CSS 的模块化思想

    2009-02-03 12:52:00
  • Python实现的ftp服务器功能详解【附源码下载】

    2021-12-23 08:30:55
  • Python入门教程 超详细1小时学会Python

    2023-06-13 23:34:12
  • python 3.10上如何安装pyqt5

    2022-04-09 23:59:53
  • 最令人蛋疼的10种用户体验设计师

    2011-08-05 18:51:07
  • 解决python3 urllib中urlopen报错的问题

    2022-01-11 10:33:32
  • Python面向对象基础入门之设置对象属性

    2021-10-21 19:25:10
  • 如何用用Python制作NFT区块链作品

    2022-11-21 22:51:09
  • asp之家 网络编程 m.aspxhome.com