java数据结构之堆栈思想(数组)
很多时候数组存在着很大的缺限,首先必须先设置数组的长度,当设定了之后,就无法改变了。
下来是一种数组长度动态变化的一种方法
package com.yz.mystack;
public class Stack {
Object[] datas;
Integer n=0;
Integer N=1;
public Stack(){
datas=new Object[N];
}
public void push(Object data){
if(n>=N){
N+=2;
Object[] temps=datas;
datas=new Object[N];
for(int i=0;i<temps.length;i++){
datas[i]=temps[i];
}
}
datas[n++]=data;
}
public Object peek(){
return datas[n-1];
}
public Object pop(){
if(--n>=0){
return datas[n];
}
return 0;
}
public static void main(String[] args){
Stack stack=new Stack();
stack.push("aa");
stack.push("bb");
stack.push("cc");
System.out.println(stack.pop());
System.out.println(stack.pop());
System.out.println(stack.pop());
System.out.println(stack.pop());
}
}
相关文档:
在java中貌似不能同时创建目录和文件,需要分布创建,即不能在创建目录的时候,同时创建该目录下的文件,如果要创建的话,需要分两步,下边是创建的代码Java代码 try { String path = "D:/test ......
使用 ANT 开发 Java 程序
常听大家讨论哪个 Java 开发工具比较好,JBuilder,Virtual Cafe ?
今天介绍一个简单易用的 Java 开发,编译,集成,测试工具:Jakarta Ant
他被称为 java 环境里的 make (make 在 C 程序开发 ......
关于java的链表思想
先可看以下例子
先建立一个实例(Student.java)
package com.yz.mylink;
public class Student {
private Integer id;
private String name;
private Integer age;
private String classes;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = i ......
Java 中内部动态类(没有static)关键字和内部静态类的就在于内部动态类不能定义静态变量或是静态方法,如果要在内部类中使用静态成员,必须将类声明为静态类. 内部类中的静态方法可以访问外部类的静态方法和本类中的静态方法或成员, 非静态方法可以访问其他所有的方法或成员 ......
建立节点类(Node.java)
package com.yz.mystack;
public class Node {
Object data;
Node next;
public Node(Object data){
this.data=data;
next=null;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
public Node getNext() {
......