SORU
16 EYLÜL 2008, Salı


Nasıl bir sıra iki yığınları kullanarak uygulamak için?

İki yığınları ve başka bir geçici değişken olduğunu varsayalım.

Olası "" kuyruk veri yapısı iki yığınları sadece? kullanarak oluşturmaktır

CEVAP
16 EYLÜL 2008, Salı


2 yığınları tutmak, onlara inbox outbox Ara.

Sıra:
- inbox üzerine yeni eleman itin

Sıradan çıkarma:
outbox boş, inbox her öğe haşhaş ve outbox üzerine basarak tekrar doldur
- outbox üst öğe Pop dönün

Bu yöntemi kullanarak, her element her biri tam olarak bir kez yığını - eleman iki kez itti olacak her anlam ve iki kez, itfa edilmiş sabit zaman operasyon vererek attı.

İşte Java: bir uygulama

public class Queue<E>
{

    private Stack<E> inbox = new Stack<E>();
    private Stack<E> outbox = new Stack<E>();

    public void queue(E item) {
        inbox.push(item);
    }

    public E dequeue() {
        if (outbox.isEmpty()) {
            while (!inbox.isEmpty()) {
               outbox.push(inbox.pop());
            }
        }
        return outbox.pop();
    }

}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bombjack2991

    bombjack2991

    29 HAZİRAN 2008
  • MADFINGER Games a.s.

    MADFINGER Ga

    21 NİSAN 2009
  • Ralph Phillips

    Ralph Philli

    5 Aralık 2006