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

  • case LianLi

    case LianLi

    28 Mayıs 2010
  • makemebad35

    makemebad35

    17 NİSAN 2006
  • Roger Huffman

    Roger Huffma

    4 ŞUBAT 2007