博主今天学习到的是数据结构中线性结构的数组和列表。在python中,我们很少会用到array数组,而是使用list列表作为替代。下面将简单过一下列表的定义。
「列表 list」是一个抽象的数据结构概念,它表示元素的有序集合,支持元素访问、修改、添加、删除和遍历等操作,无须使用者考虑容量限制的问题。列表可以基于链表或数组实现。
初始化列表
# 初始化列表
# 无初始值
nums1: list[int] = []
# 有初始值
nums: list[int] = [1, 3, 2, 5, 4]
下面是列表自带的一些函数可直接使用
数组和列表的刷题巩固
LeetCode 1.两数之和
LeetCode 4. 寻找两个正序数组的中位数
LeetCode 15. 三数之和
LeetCode 704.二分查找
LeetCode 27.移除元素
LeetCode 977.有序数组的平方
LeetCode 209.长度最小的子数组(滑动窗口)
LeetCode 59.螺旋矩阵II
LeetCode 283.移动零
我们在完成数组和列表类的题目时,可以多利用双指针的思路去解决问题,在遇到有序数组或者时间复杂度要求为O(logn)的题目,可以多考虑使用二分查找的方式完成。