2016-08-07 51 views
6

Aralarındaki fark nedir?Sırasıyla java Dequeue

A sıranın, sıranın sonuna eklenen öğelere sahip olması ve sıranın başlangıcından kaldırılan öğeler için tasarlandığını biliyorum. Burada, Dequeue, sıranın her iki ucundaki öğeleri ekleyip kaldırabileceğiniz bir sıra olarak gösterilir.

Ancak hangisi daha verimli?

Artı ikisi arasındaki fark nedir? çünkü onlar hakkında daha önce söylediğim şey hakkında biraz bilgim var, ama onlar hakkında daha fazla şey bilmek istiyorum. Takdir edilecektir.

+0

Javadoc yararlı olabilir. –

+1

Ne için verimlilik? –

+0

Javadoc'u çoktan gördüm ama hala çok fazla şey almadım. Bu yüzden burada birileri bana yardım edebilir mi diye sordum ... –

cevap

3

Deque ve queue, farklı yollarla uygulanabilecek soyut veri türleridir. Performans hakkında konuşmak için hangi uygulamaları karşılaştırmak istediğinizi ve hangi işlemlerle ilgilendiğinizi belirtmelisiniz. Daha da iyisi, uygulamanızın sahip olduğu iş yükü ve kullanacağınız ortam ile kıyaslama yapın. donanım, işletim sistemi, JVM sürümü).

Her bir deque aynı zamanda bir sıra olduğundan, genel olarak dequantların bir kuyruk kadar iyi olabileceğini söyleyebiliriz.

14

Deque, "çift bitişli kuyruk" için kısadır. Sıradan bir sırayla, bir kenara bir şeyler ekler ve onları diğerlerinden alırsınız. Çift uçlu bir kuyrukla, her iki tarafa da bir şeyler ekleyebilir ve bunları her iki ucundan alabilirsiniz. Bu biraz daha çok yönlü hale getirir; örneğin, isterseniz onu bir yığın olarak kullanabilirsiniz. Verimlilik açısından, gerçekten uygulamaya bağlı olarak değişmektedir. Ancak genel olarak, bir kuyruktan daha iyi bir performans beklemek istemezsiniz çünkü bir (tek uçlu) kuyruk, nesnelerin "yanlış" uçta eklenmesine veya kaldırılmasına izin vermeyecek şekilde uygulanabilir. Bir deque uygulamasının herhangi bir uygulaması, bir sıranın uygulanması olarak da çalışacaktır.