jdk:1.8 一、先看看ArrayList类的整体概述, ArraList是基于动态数组实现的一种线性列表,这种基于动态数组的好处就是索引比较快,时间复杂度为O(1);但是对数据修改比较慢,因为需要移动数据,移动数据的过程需要消耗大量的时间 因此我们在平时的使用的过程中,需要结合我们的具体业务需求 ...
分类:
其他好文 时间:
2020-03-02 10:43:14
阅读次数:
62
从本节开始,我们探讨Java中的容器类,所谓容器,顾名思义就是容纳其他数据的,计算机课程中有一门课叫数据结构,可以粗略对应于Java中的容器类,我们不会介绍所有数据结构的内容,但会介绍Java中的主要实现,并分析其基本原理和主要实现代码。 前几节在介绍泛型的时候,我们自己实现了一个简单的动态数组容器 ...
分类:
编程语言 时间:
2020-03-01 14:48:27
阅读次数:
86
数组分为动态数组和静态数组之分 定义 数组:数组是用来存储相同类型的变量的顺序集合。所有的数组都是由连续的内存位置组成。最低的地址对应第一个元素,最高的地址对应最后一个元素。 静态数组:静态数组是在声明时已经确定子数组大小的数组,即数组元素的个数固定不变; 动态数组:动态数组是指在声明时没有确定数组 ...
分类:
编程语言 时间:
2020-02-28 20:49:57
阅读次数:
51
一、Array 1.数组 2.动态数组 3.数组实现队列 4.数组实现循环队列 5..数组实现栈 复杂度分析: 二、LinkedList 1.链表 2.链表实现队列 3.链表实现栈 复杂度分析: 三、BinaryTree 1.二叉树 复杂度分析: 四、Set 1.链表实现集合 2.二叉树实现集合 复 ...
分类:
其他好文 时间:
2020-02-28 14:09:17
阅读次数:
60
ArrayList概述Hello大家好,今天就来介绍一下ArrayList,说到ArrayList,很多人都知道它的底层是使用数组实现的,线程不安全的,说到它的特点,都会说查找快,增删慢,因为面试题大家都是这么背过来的。今天就来说说它的底层源码吧。ArrayList更准确的说是动态数组去实现的,这里使用动态两字,是为了能够充分体现它的特点。再者就是ArrayList不是线程安全的,所以效率比较高,
分类:
其他好文 时间:
2020-02-26 23:16:29
阅读次数:
97
1. Multicharts中关于数组的操作比较麻烦,而且当中所谓的动态数组的定义并不是像其他语言那种的概念。因此要对数组进行元素“”追加“”的话,需要重新更改数组的索引,然后再最后一个位置添加value。这样操作是比较繁琐而且不清晰的。 2. 但是比如像Python语言中,列表的操作,可以直接采用 ...
分类:
移动开发 时间:
2020-02-25 09:19:41
阅读次数:
82
```cpp #include #include //deque是c++98中引入的动态数组(dynamic array) //namespace std { //template> //class deque; //} //特点:随机访问元素, 末端和头部添加删除元素效率高,中间删除和添加元素效率... ...
分类:
编程语言 时间:
2020-02-24 20:53:50
阅读次数:
84
```cpp #include #include #include //#include //c++ 98 static void vectorPart() { //vector 是c++98中引入的动态数组(dynamic array) //namespace std { //template> ... ...
分类:
编程语言 时间:
2020-02-24 20:14:20
阅读次数:
95
Vue的常用特性 一、表单基本操作 都是通过v-model 单选框 1、 两个单选框需要同时通过v-model 双向绑定 一个值 2、 每一个单选框必须要有value属性 且value值不能一样 3、 当某一个单选框选中的时候 v-model 会将当前的 value值 改变 data 中的 数据 g ...
分类:
其他好文 时间:
2020-02-24 13:13:34
阅读次数:
70
ArrayList与LinkedList效率对比 概述 1. ArrayList 是一个 动态数组 ,它是 线程不安全 的,允许元素为null。其底层数据结构依然是 数组 ,因为实现了RandomAccess接口,所以拥有 随机快速访问 的能力,ArrayList可以以O(1)的时间复杂度去根据下标 ...
分类:
其他好文 时间:
2020-02-22 22:08:21
阅读次数:
73