真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

java用棧隊列的代碼,用隊列實現(xiàn)棧

用java編一個隊列

自己寫了個簡單的實現(xiàn)

創(chuàng)新互聯(lián)公司提供高防服務器、云服務器、香港服務器、成都移動機房

class QueueE{

private Object[] integerQueue;//用來當隊列

public int tail;//隊尾

public int size;//隊的長度,也可以設置一個默認值,溢出時從新申請

public Queue(int size){

integerQueue=new Object[size];

this.size=size;

tail=-1;

}

/**

* 將元素插入隊列

* @return 如果該元素已添加到此隊列,則返回 true;否則返回 false

*/

public boolean offer(E e){

if(tail size-1){

tail++;

this.integerQueue[tail]=e;

return true;

}else{

return false;

}

}

/**

* 獲取并移除此隊列的頭,如果此隊列為空,則返回 null。

*/

public E poll(){

Object tmp;

if(tail=0){

tmp=this.integerQueue[tail];

tail--;

return (E)tmp;

}else{

return null;

}

}

}

怎么用java代碼實現(xiàn)棧內存?

使用java.util包中的Stack類創(chuàng)建一個棧對象

public Object push(Object data);輸入數(shù)據(jù),實現(xiàn)壓棧

public Object pop();輸出數(shù)據(jù),實現(xiàn)彈棧

public boolean empty()判空

public Object peek();查看棧頂元素

可以去查查API嘛

我也是學java的,大家一起進步。

跪求用JAVA語言實現(xiàn)一個棧和一個隊列,數(shù)據(jù)元素為double型。。。具體在問題補充里

public?interface?MyStackT?{

/**

?*?判斷棧是否為空

?*/

boolean?isEmpty();

/**

?*?清空棧

?*/

void?clear();

/**

?*?棧的長度

?*/

int?length();

/**

?*?數(shù)據(jù)入棧

?*/

boolean?push(T?data);

/**

?*?數(shù)據(jù)出棧

?*/

T?pop();

}

public?class?MyArrayStackT?implements?MyStackT?{

private?Object[]?objs?=?new?Object[16];

private?int?size?=?0;

@Override

public?boolean?isEmpty()?{

return?size?==?0;

}

@Override

public?void?clear()?{

//?將數(shù)組中的數(shù)據(jù)置為null,?方便GC進行回收

for?(int?i?=?0;?i??size;?i++)?{

objs[size]?=?null;

}

size?=?0;

}

@Override

public?int?length()?{

return?size;

}

@Override

public?boolean?push(T?data)?{

//?判斷是否需要進行數(shù)組擴容

if?(size?=?objs.length)?{

resize();

}

objs[size++]?=?data;

return?true;

}

/**

?*?數(shù)組擴容

?*/

private?void?resize()?{

Object[]?temp?=?new?Object[objs.length?*?3?/?2?+?1];

for?(int?i?=?0;?i??size;?i++)?{

temp[i]?=?objs[i];

objs[i]?=?null;

}

objs?=?temp;

}

@SuppressWarnings("unchecked")

@Override

public?T?pop()?{

if?(size?==?0)?{

return?null;

}

return?(T)?objs[--size];

}

@Override

public?String?toString()?{

StringBuilder?sb?=?new?StringBuilder();

sb.append("MyArrayStack:?[");

for?(int?i?=?0;?i??size;?i++)?{

sb.append(objs[i].toString());

if?(i?!=?size?-?1)?{

sb.append(",?");

}

}

sb.append("]");

return?sb.toString();

}

}

//棧的鏈表實現(xiàn)

public?class?MyLinkedStackT?implements?MyStackT?{

/**

?*?棧頂指針

?*/

private?Node?top;

/**

?*?棧的長度

?*/

private?int?size;

public?MyLinkedStack()?{

top?=?null;

size?=?0;

}

@Override

public?boolean?isEmpty()?{

return?size?==?0;

}

@Override

public?void?clear()?{

top?=?null;

size?=?0;

}

@Override

public?int?length()?{

return?size;

}

@Override

public?boolean?push(T?data)?{

Node?node?=?new?Node();

node.data?=?data;

node.pre?=?top;

//?改變棧頂指針

top?=?node;

size++;

return?true;

}

@Override

public?T?pop()?{

if?(top?!=?null)?{

Node?node?=?top;

//?改變棧頂指針

top?=?top.pre;

size--;

return?node.data;

}

return?null;

}

/**

?*?將數(shù)據(jù)封裝成結點

?*/

private?final?class?Node?{

private?Node?pre;

private?T?data;

}

}


文章名稱:java用棧隊列的代碼,用隊列實現(xiàn)棧
鏈接URL:http://weahome.cn/article/hcdiii.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部