线性结构
线性数据结构。
In lethe
近城远山,都是人间。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
线程同步和死锁和单例设计模式理解
线程与同步什么是同步同步就是加锁,不让其它人访问synchronized指的就是同步的意思什么情况下需要同步当多线程并发, 我们希望某一段代码执行的过程中CPU不要切换到其他线程工作. 这时就需要同步,否则会有线程安全问题.同步代码块1 使用synchronized关键字加上一个锁对象来定义一段代码, 这就叫同步代码块2 多个同步代码块如果使用相同的锁对象, 那么他们就是同步的3...原创 2020-04-12 19:45:09 · 244 阅读 · 0 评论 -
基本队列,双端队列,循环队列及循环双端队列的简单实现
队列是一种特殊的线性表,只能在头尾两端进行操作,遵循先进先出的原则。下面是一些队列接口的简单实现。双向链表实现基本队列package com.ldg.queue;import com.ldg.doubles.LinkedList;/*** * 队列:首部执行出队 尾部执行入队 只在首尾进行操作 所以底层用双向链表来实现 时间复杂度很小 * * @author Administr...原创 2020-04-06 11:10:45 · 980 阅读 · 0 评论 -
自己实现双向循环链表和单向循环链表
这次的两循环链表是基于上篇的两链表,不同的就是首尾相互指向,所以主要改动在add,remove方法上。单向循环链表在这里插入代码片原创 2020-03-23 13:01:29 · 163 阅读 · 0 评论 -
自己实现简单动态数组,单链表,双向链表
动态数组动态数组是顺序存储结构,查找,赋值速度很快。动态数组最灵活、最方便,有助于有效管理内存。例如,可短时间使用一个大数组,然后,在不使用这个数组时,将内存空间释放给系统。如果不用动态数组,就要声明一个数组,它的大小尽可能达到最大,然后再抹去那些不必要的元素。但是,如果过度使用这种方法,会导致内存的操作环境变慢。package com.ldg;@SuppressWarnings("u...原创 2020-03-22 18:02:39 · 257 阅读 · 0 评论
分享