数据结构之栈和队列
2016-04-21 17:09
302 查看
栈:先进后出
队:先进先出
具体操作接口请看代码
实现我会传到github上欢迎大家下载
https://github.com/pink0453/dataStructure.git
这里注意一点队列的实现我继承了ArrayList这个实现 也就是我的第二篇博客
队:先进先出
具体操作接口请看代码
实现我会传到github上欢迎大家下载
https://github.com/pink0453/dataStructure.git
这里注意一点队列的实现我继承了ArrayList这个实现 也就是我的第二篇博客
/** * 栈 * @author asdc * */ public interface Stack<T> { /** * 入栈 * @param e * @return */ T push(T e); /** * 出栈 * @return */ T pop(); /** * 返回栈顶部对象 * @return */ T peek(); /** * 判断当前栈是否为空 * @return */ boolean empty(); /** * 返回当前栈的大小 * @return */ int size(); }
public interface Queue<T> { /** * 入队 * @param e * @return */ T enqueue(T e); /** * 出队 * @return */ T dequeue(); /** * 返回队首元素 * @return */ T front(); }
/** * 栈的应用 * @author asdc * */ public class StackApplication { /** * 进制转换 将10进制的数转换为任意进制的数 * @param num * @param base * @return */ public int convert(int num, int base){ String[] bit = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"}; Stack<String> temp = new StackImpl<>(); while(num != 0){ temp.push(bit[num % base]); num = num / base; } String newNumStr = ""; while(!temp.empty()){ newNumStr = newNumStr + temp.pop(); } return Integer.parseInt(newNumStr); } }
相关文章推荐
- C#数据结构之顺序表(SeqList)实例详解
- Lua教程(七):数据结构详解
- 解析从源码分析常见的基于Array的数据结构动态扩容机制的详解
- C#数据结构之队列(Quene)实例详解
- C#数据结构揭秘一
- C#数据结构之单链表(LinkList)实例详解
- C#线程队列用法实例分析
- 算法系列15天速成 第九天 队列
- C++基于栈实现铁轨问题
- 数据结构之Treap详解
- C语言进制转换代码分享
- C语言单链队列的表示与实现实例详解
- C语言栈的表示与实现实例详解
- C语言实现颠倒栈的方法
- 算法系列15天速成 第十天 栈
- mysql 队列 实现并发读
- PHP中实现中文字符进制转换原理分析
- php 实现进制相互转换
- C#队列Queue用法实例分析
- C#多线程处理多个队列数据的方法