数组类

作者: 晨光523152 | 来源:发表于2020-08-25 15:57 被阅读0次
image.png
#思路,copy原数组,让nums与copy的数组做比较,
class Solution:
    def findUnsortedSubarray(self, nums: List[int]) -> int:
        nums_copy = sorted(nums)
        res = []
        for i in range(len(nums)):
            if nums_copy[i] == nums[i]:
                continue
            else:
                res.append(i)
        if not res:
            return 0
        return res[-1] - res[0] + 1
#思路:
#从左往右看,因为要得到一个升序,所以右边的数一定要比左边的数大,
#如果不是的话,则说明是需要修改的位置,用right来记录最右边需要修改的位置
#从右往左看,左边的数一定要比右边的数大
#如果不是的话,则说明是需要修改的位置,用left来记录最左边需要修改的位置
class Solution:
    def findUnsortedSubarray(self, nums: List[int]) -> int:
        left, right = len(nums), 1
        max_num, min_num = nums[0], nums[-1]
        for i in range(len(nums)):
            if nums[i] >= max_num:
                max_num = nums[i]
            else:
                right = i
        for i in range(len(nums) - 1, -1, -1):
            if nums[i] <= min_num:
                min_num = nums[i]
            else:
                left = i
        if right <= left:
            return 0
        return right - left + 1
image.png
#思路:感觉对于这种题都是遍历一次数组,然后和某一个值作比较,作差得到结果
#这道题先排序,然后遍历数组,数组的值小于等于其前一个位置的值,那么让该位置更新为前一个位置的值加1,
#因为每次只能加1,所以操作次数就是改变后的值与未改变的值的差
class Solution:
    def minIncrementForUnique(self, A: List[int]) -> int:
        A.sort()
        res = 0
        for i in range(1,len(A)):
            if A[i] <= A[i-1]:
                res += A[i-1] + 1 - A[i]
                A[i] = A[i-1] +1
            else:
                continue
        return res

相关文章

  • json : 类数组转数组+ajax请求数据

    类数组转数组 类数组:arguments: 用来接收实参的HTMLcollection: 获取元素集合 类数组转数...

  • JS 数组 和 类数组

    类数组是一个普通对象,而真实的数组是 Array 类型 arguments 也是类数组 类数组转换为数组

  • 类数组->数组

    Array.prototype.slice.call(arrayLike) 首先Array.prototype.s...

  • 类数组、arguments

    arguments为一个类数组的对象;类数组对象即为:有length属性和索引的对象。一、类数组===》数组var...

  • js类数组转数组的方法

    一、什么是类数组 类数组是一种类似数组的对象,类数组并不是数组,不具有数组所具有的方法;调用Array.isArr...

  • 类数组与数组

    数组和类数组对象有什么区别数组和类数组对象都可以用索引访问,并具有length属性,不同是类数组不能调用数组的方法...

  • 对Javascript 类数组对象的理解与应用 | Argume

    这篇文章将要告诉你: 什么是类数组对象 类数组对象是如何出现的 如何避免使用类数组对象的常见问题 将类数组对象转换...

  • 类数组问题

    类数组长什么样子? 类数组怎么转化为数组呢? 1.使用 Array.prototype.slice.call(【类...

  • 2018年9月29日.NET笔试面试题

    数组列表和数组有什么区别? 数组即Array类,数组列表即ArrayList类,两者非常相似,不过Array类在S...

  • 解开那一层面纱,js类数组的小秘密(下篇)

    前言: 在 解开那一层面纱,js类数组的小秘密(上篇)里面,已经提到类数组的定义,以及常见的类数组类型,类数组的转...

网友评论

      本文标题:数组类

      本文链接:https://www.haomeiwen.com/subject/ajmajktx.html