665. 非递减数列(类内调用函数)

python 类内函数互调的两种用法

1. 类名.函数名

2. self.函数名 


这道题本身没什么好记录的。因为我自己ac了,虽然代码写的烂,但也ac了。

class Solution(object):
    def checkPossibility(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        flag = 0
        i = 0
        while i<len(nums)-1:
            if nums[i] <= nums[i+1]:
                i+=1
            else:
                if not flag:
                    tmp=nums[i]
                    del nums[i]
                    if not self.isDescending(nums):
                        nums.insert(i,tmp)
                        # print(nums)
                        del nums[i+1]
                        if self.isDescending(nums):
                            return True
                    i = 0
                    flag = 1
                    # print(nums)
                else:
                    return False
        return True

主要有两种情况:

# nums = [4, 2, 3]  # del nums[i]
nums = [2, 3, 3, 2, 4] # del nums[i+1]

猜你喜欢

转载自blog.csdn.net/weixin_31866177/article/details/84106186