博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java实现泛型顺序栈
阅读量:6405 次
发布时间:2019-06-23

本文共 1696 字,大约阅读时间需要 5 分钟。

hot3.png

用java来实现泛型的顺序栈。

/** * 顺序栈 * @param 
 泛型T */public class SequenceStack
 { private T[] data; private int top; /**  * 初始化  *   * @param capacity  *            栈的大小  */ public SequenceStack(int capacity) { data = (T[]) new Object[capacity]; top = -1; } /**  * 是否为空  *   * @return  */ public boolean isEmpty() { if (top == -1) { return true; } else { return false; } } /**  * 是否满  *   * @return  */ public boolean isFull() { if (top != -1 && top == data.length - 1) { return true; } else { return false; } } /**  * 压栈  *   * @param t  * @throws Exception  */ public void push(T t) throws Exception { if (isFull()) { throw new Exception("push into full stack exception"); } top++; data[top] = t; } /**  * 退栈  *   * @param t  * @return  * @throws Exception  */ public T pop() throws Exception { if (isEmpty()) { throw new Exception("pop empty stack exception"); } T result = data[top]; top--; return result; } /**  * 返回指定下标的元素  *   * @param t  * @return  * @throws Exception  */ public T get(int index) throws Exception { if (index > top || index < 0) { throw new Exception("out of size exception"); } return data[top]; } public static String DexStringToBinary(int hex) throws Exception { SequenceStack
 stack = new SequenceStack
(10); while (hex > 0) { int i = hex % 2; hex = hex / 2; stack.push(i); } String result = ""; while (!stack.isEmpty()) { result += stack.pop(); } return result; } public static void main(String[] args) throws Exception { String binary = SequenceStack.DexStringToBinary(67); System.out.println(binary); }}

转载于:https://my.oschina.net/u/2360415/blog/547910

你可能感兴趣的文章
【后缀数组】
查看>>
图片缩放裁剪
查看>>
jquery ajax 回调函数的值alert出来[object Object] 解决方法
查看>>
JQuery选择器总结
查看>>
MySQL安装详解(V5.5 For Windows)
查看>>
Android单例模式
查看>>
Log4php 使用心得
查看>>
十三香_百度百科
查看>>
paip.网页右键复制菜单限制解除解决方案
查看>>
string.Format 格式化时间,货币
查看>>
Kerberos和NTLM - SQL Server
查看>>
记github上搭建独立域名的免费博客的方法过程
查看>>
Web设计之网页布局CSS技巧
查看>>
iOS key value coding kvc在接收json数据与 model封装中的使用
查看>>
Android 滑动效果入门篇(二)—— Gallery
查看>>
Revit二次开发示例:DesignOptions
查看>>
Entity Framework 系统约定配置
查看>>
优秀设计:纹理在网页设计中的20个应用示例
查看>>
C++ 关键字 explicit, export, mutable
查看>>
生成指定范围的一组随机数并求平均值
查看>>