首页 > 其他 > 详细

leetcode-mid-sorting and searching-162. Find Peak Element

时间:2019-06-04 17:38:17      阅读:82      评论:0      收藏:0      [点我收藏+]

mycode  54.81%

class Solution(object):
    def findPeakElement(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        if len(nums) == 0:
            return None
        if len(nums) == 1 or nums[0]>nums[1] :
            return 0
        if nums[-1] > nums[-2]:
            return len(nums)-1
        
        for i in range(1,len(nums)-1):
            if nums[i] > nums[i-1] and nums[i] > nums[i+1]:
                return i
       

 

参考:

思路:题目中左右为负无穷这个条件可以用起来,把原列表扩增以下就可以把两端的情况合并在一个for循环讨论啦

import math
class Solution(object):
    def findPeakElement(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        
        nums = [-float(inf)] + nums + [-float(inf)]
        for i in range(1, len(nums)-1):
            if nums[i-1] < nums[i] > nums[i+1]:
                return i-1

 

leetcode-mid-sorting and searching-162. Find Peak Element

原文:https://www.cnblogs.com/rosyYY/p/10974761.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!