数组:在连续的内存空间中,存储一种相同类型的元素。
区分:
(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)。
特点:适合读不适合写,读多写少。
常用操作:
- 创建数组
- 添加元素
- 访问元素
- 修改元素
- 删除元素
- 遍历数组
- 查找元素
- 数组的长度
- 数组排序(语言内置的排序方法)
Python3:
Java:
【更正】:Java代码中获取数组长度的时间复杂度为O(1)。
标签:访问,手把手,复杂度,元素,索引,搜索,数组,刷力 来源: https://www.cnblogs.com/monocy/p/16205788.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。