monocy

导航

手把手带你刷力扣(2)-数组

数组:在连续的内存空间中,存储一种相同类型的元素。

区分:

(1)元素和索引

索引是元素的下标,在数组中的相对位置。

元素 1 2 3
索引 0 1 2

(2)数组访问和数组搜索

访问a[1]是2,搜索2得到索引1。

 重要操作的时间复杂度:

(1)访问  O(1)  

(2)搜索  O(N)

(3)插入  O(N)

(4)删除  O(N)

注:由于数组存储在连续内存空间的特点,知道需要访问的索引根据数组首地址计算就可以直接访问其地址,所以时间复杂度是O(1);搜索最坏情况需要遍历数组,插入和删除最坏情况中数组中的元素都需要移动,所以时间复杂度是O(N)。

特点:适合读不适合写,读多写少。

常用操作:

  1. 创建数组
  2. 添加元素
  3. 访问元素
  4. 修改元素
  5. 删除元素
  6. 遍历数组
  7. 查找元素
  8. 数组的长度
  9. 数组排序(语言内置的排序方法)

Python3:

 

 

 Java:

【更正】:Java代码中获取数组长度的时间复杂度为O(1)。

 

posted on 2022-05-01 09:52  Monocy219  阅读(32)  评论(0编辑  收藏  举报