数据结构
GuZhC_
smr:run cts -m CtsSecurityTestCases
run gts-smr
run sts-dynamic-incremental
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构——数组及简介时间复杂度
数组基础 特性:数据码成一排进行存放,每一个数据对应一个索引,支持随机访问,初始化必须指定大小 使用:Java中初始化:int[] arr = new int[10] 或 int[] arr = new int[]{ 1,2,3 } 其他:数组索引可以有意义也可没有意义,但最好应用于索引有意义的情况因为其支持随机访问的特性,根据索引查找对应数据所用的时间复杂度为O(1) 动态数组 具体...原创 2018-12-05 18:19:41 · 10930 阅读 · 2 评论 -
数据机构— 栈和队列
栈 Stack 栈的特性: · 一种线性结构 · 相比数组,栈对应的操作是数组的一个子集 · 只能从一段添加和取出元素(这一端称为栈顶) · 栈是一种后进先出的数据结构——Last In First Out (LIFO) 如图 有元素1 2 3 4 进栈顺序为 1 2 3 4,最后进栈的元素4最先出栈。 栈的应用: Undo操作(撤销):例如写代...原创 2018-12-13 18:42:57 · 230 阅读 · 0 评论 -
数据结构——链表
特点: · 一种线性数据结构 · 最简单的动态数据结构,不需要处理固定容量的问题 · 天然具有递归性 · 数据存储在“节点”中 · 丧失了随机访问的能力 使用: 因为丧失了随机访问的能力所以适用于索引无语义的情况 实现: 增加元素: 链表头添加元素:链表中有一个变量head记录链表的头,所以想链表头添加元素十分方便。步骤为创建一个新节点让它的next指向现在的头结点,然后将...原创 2018-12-14 18:18:52 · 274 阅读 · 0 评论 -
数据结构——优先队列和堆
优先队列: 优先队列也是一个队列,他和普通队列的区别是:普通队列是先进先出,后进先出的;优先队列是出队顺序和入队顺序无关,和优先级相关。(如:医院看病时,病情最严重的那个需要先看病) 实现优先队列同样底层也可以选择多种数据结构, 选择 普通的线性结构实现:出队O(1),入队O(n); 选择 顺序线性结构:入队O(n),出队O(1); 选择 堆实现:入队O(logn),出队O(logn)...原创 2018-12-20 15:09:57 · 610 阅读 · 0 评论 -
数据结构——二分搜索树
首先来看一下二叉树: 和l链表一样,动态数据结构 class Node{ E e; Node Left; Node right; } 特点: · 二叉树具有唯一的根节点 · 二叉树每个节点最多有两个孩子(左孩子,右孩子) · 没有任何孩子的节点叫叶子节点 · 每个二叉树最多一个父亲节点 · 同链表一样具有天然递归性 注意:二叉树不...原创 2018-12-17 18:10:43 · 210 阅读 · 0 评论 -
数据结构——集合和映射
集合Set: 这个感觉什么特别的。 集合底层也同样可以用不同的数据结构实现(如二分搜索树,链表) java中的TreeSet底层使用的是红黑树。 一般的集合是不能添加重复元素的,根据这一特性很适合用于统计。 映射Map: · 存储(键,值)数据对的数据结构(Key,Value) · 根据Key,能快速寻找value · 底层使用链表或树实现 如下图:将元素与另一个对应 c...原创 2018-12-17 18:53:37 · 1427 阅读 · 0 评论
分享