- 博客(4)
- 收藏
- 关注
原创 【JAVA数据结构】先进先出队列
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。下面直接来看实现:/** * <p>先进先出队列</p> * * @author white * @version $Id: MyQueen, v 0.1 2016/9/21 00
2016-09-21 22:11:00 6256
原创 【JAVA数据结构】双向链表
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点下面直接来看实现:/** * <p>双向链表实现(先进后出)</p> * @author white * @version $Id: MyLinkedList, v 0.1 2016/9/21 0021 下午 8:32 w
2016-09-21 22:07:29 359
原创 【JAVA数据结构】栈(数组实现)
栈是一种先进后出的数据结构套用现成的术语来讲:是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。下面直接来看实现:/** * <p>基于数组的栈表实现<
2016-09-21 22:00:25 345
原创 堆排序原理(图)及java版代码
数据结构中的堆可看做完全二叉树结构,其特性是任意一父节点的值分别大于或小于其左右子节点的值(大根堆和小根堆)完全二叉树一般采用数组结构来表示,根据完全二叉树特性任意一父节点的值都大于(或小于)其子节点的值可知其第一个节点的值为树中的最大(最小)值,则每次将第一个父节点的值放到数组最后则可以实现排序。首先来看一个图例: 点击查看大图图中详细描述了如何将一组数构建成一个完全二叉树以及通过二叉树来排序
2016-09-15 15:42:04 720
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人