雙向迴圈佇列

2021-10-07 23:14:45 字數 1253 閱讀 4026

package com.czz.circle;

//雙向迴圈佇列

public

class

dequeue

// 元素的數量

public

intsize()

// 是否為空

public

boolean

isempty()

// 從隊尾入隊

public

void

enqueuerear

(e element)

// 從隊頭出隊

public e dequeuefront()

// 從隊頭入隊

public

void

enqueuefront

(e element)

// 從隊尾出隊

public e dequeuerear()

// 獲取佇列的頭元素

public e front()

// 獲取佇列的尾元素

public e rear()

public

intindex

(int index)

return index%elements.length;

}@override

public string tostring()

sb.(elements[i]);

} sb.

("]");

return sb.

tostring()

;}private

void

ensurecapacity

(int capacity)

elements=newelements;

front=0;

system.out.

println

("oldcapacity:"

+oldcapacity+

", "

+"newcapacity"

+newcapacity);}

}

package com.czz.circle;

public

class

test

for(

int i=

0;i<

3;i++)

system.out.

println

(queue);}

}

雙向迴圈佇列的陣列實現

需要說明的是此演算法我並沒有測試過,所以只能用用來參考!package source public class deque insert a number into left side public void insertleft long n insert a number into right ...

deque雙向佇列

deque雙向佇列是一種雙向開口的連續線性空間,可以高效的在頭尾兩端插入和刪除元素,deque在介面上和vector非常相似,下面列出deque的常用成員函式 deque的實現比較複雜,內部會維護乙個map 注意!不是stl中的map容器 即一小塊連續的空間,該空間中每個元素都是指標,指向另一段 較...

deque雙向佇列

deque雙向佇列是一種雙向開口的連續線性空間,可以高效的在頭尾兩端插入和刪除元素,deque在介面上和vector非常相似,下面列出deque的常用成員函式 deque的實現比較複雜,內部會維護乙個map 注意!不是stl中的map容器 即一小塊連續的空間,該空間中每個元素都是指標,指向另一段 較...