試題7 用兩個棧實現佇列 使用兩個佇列實現棧

2021-08-08 23:44:06 字數 725 閱讀 4279

public class test07 

public int deletehead()

} return stack2.pop();//刪除佇列頭部元素 }

public static void main(string args)

// 依次取出

for (int i = 0; i < 5; i++)

}}

使用兩個棧實現乙個佇列

public class test07_02 

//如果queue1為空,queue2有元素,直接放入queue2

if (queue1.isempty())

if (queue2.isempty())

}public int pop() catch (exception e)

}//如果queue1為空,queue2有元素, 將queue2的元素依次放入queue1中,直到最後乙個元素,我們彈出。

if (queue1.isempty())

return queue2.poll();

}if (queue2.isempty())

return queue1.poll();

}return (integer) null;

}public static void main(string args)

}

用兩個棧實現佇列 用兩個佇列實現棧

劍指offer 面試題7 用兩個棧實現佇列。templateclass cqueue 我們試著用兩個棧來模擬佇列的操作,發現如下可行操作 完整 實現 面試題7 用兩個棧實現佇列 分別完成在隊尾插入結點和在隊頭刪除結點的功能。date 2014 06 27 include include includ...

面試題7 用兩個棧實現佇列和用兩個佇列實現乙個棧

template class cqueue 解題思路 插入操作在stack1中進行,刪除操作在stack2中進行,如果stack2為空,則將stack1中的所有元素轉移到stack2中。例項 include include includeusing namespace std template cl...

面試題7 用兩個棧實現佇列和用兩個佇列實現乙個棧

template class cqueue 解題思路 插入操作在stack1中進行,刪除操作在stack2中進行,如果stack2為空,則將stack1中的所有元素轉移到stack2中。例項 view code include include include using namespace std ...