数组常用操作

数组常用操作

创建数组,添加元素,删除元素,插入数组元素,修改数组元素,根据索引查询元素,根据元素查询索引,数组长度,遍历数组方法,数组升序降序排序

class ArragTest:
    def test(self):
        a=[]    #创建数组

    ## 添加数组元素
        a.append(1)
        a.append(2)
        a.append(3)
        print(a)
        #[1,2,3]

    ##删除数组元素
        a.pop(2) ##pop根据索引删除数组元素
        print(a)
        # [1,2]
    ##插入数组元素
        a.insert(0,99)  
        print(a)
        # [99,1,2]
        a.remove(99) ##remove根据元素删除
        print(a)
        # [1,2]

    ##修改数组元素
        a[0]=5      ##根据索引删除元素
        print(a)
        # [5,2]

    ##查询数组元素
        temp=a[0]   ##根据索引查询元素
        print(temp)
        # 5

    # 数组长度
        size=len(a)
        print(size)
        #2

    # 查询某个元素的索引
        index=a.index(5)
        print(index)
        #0

    # 遍历数组方法
    # 遍历元素
        for i in a:
            print(i) 
        #5
        #2
    # 遍历索引,元素
        for n,m in enumerate(a):
            print(n,m) 
        # 0 5
        # 1 2
     # 遍历索引
        for i in range(0,len(a)):
            print(i)
        #0
        #1
            print(a[i])
        #5
        #2

    # 数组排序
        a.sort() #数组从小到大排序
        print(a)
        a.sort(reverse=True)    #数组从大到小排序
        print(a)
        

if __name__ == "__main__" :

    test1=ArragTest()
    test1.test()

相关LeetCode题

485

给定一个二进制数组 nums , 计算其中最大连续 1 的个数。

示例 1:

输入:nums = [1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
示例 2:

输入:nums = [1,0,1,1,0,1]
输出:2

class Solution:
    def findMaxConsecutiveOnes(self, nums: List[int]) -> int: 
        if nums is None or len(nums)==0:
            return 0   
        result=0
        count=0
        for i in nums:
            if i==1:
                count+=1
            else:
                result=max(result,count)
                count=0
        return max(result,count)

283

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

请注意 ,必须在不复制数组的情况下原地对数组进行操作。

示例 1:

输入: nums = [0,1,0,3,12]
输出: [1,3,12,0,0]
示例 2:

输入: nums = [0]
输出: [0]

class Solution:
    def moveZeroes(self, nums: List[int]) -> None:
        """
        Do not return anything, modify nums in-place instead.
        """
        index=0
        for num in nums:
            if num != 0:
                nums[index]=num
                index+=1
        for i in range(index,len(nums)):
                nums[i]=0
        return nums

你可能感兴趣的:(python,leetcode,算法,排序算法)