Очередь FIFO с циклическим спискомJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Очередь FIFO с циклическим списком

Сообщение Anonymous »

Я создал реализацию очереди, используя один список соединений. В этом коде я использую два указателя (первый и последний) для определения начала и конца очереди. Мой код:

Код: Выделить всё

import java.io.PrintStream;
import java.util.*
/**
* @author Justin Bieber
*/
public class StringQueueImpl implements StringQueue {

private int total;         // number of elements on queue
private Node head;    // beginning of queue
private Node tail;     // end of queue

private class Node {
T ele;
Node next;
Node(T ele) {
this.ele = ele;
next = null; }
}
/**
* Creates an empty queue.
*/
public StringQueueImpl() {
first = null;
last  = null;
total = 0;
}

boolean isEmpty() {
return (head == null);
}

public  void put(T ele) {
Node t = tail;
tail = new Node(ele);
if (isEmpty()) head = tail;
else t.next = tail;
total++;
}

public T get() {
if (isEmpty()) throw new NoSuchElementException();
T v = head.ele;
Node t = head.next;
head = t;
return v;
total--;
}

public T peek() {
if (isEmpty()) throw new NoSuchElementException();
return head.ele;
}

Node node = head;
public void printQueue(PrintStream stream){
while(node != null){
stream.println(node.ele);
stream.flush();
node = node.next;
}
}
public int size(){
return total;
}
}
Мой вопрос заключается в том, как создать реализацию очереди с использованием циклического списка. (Вместо двух указателей для начала и конца я хотел бы использовать только один указатель, который будет использоваться как для начала, так и для конца очереди).
Любая помощь приветствуется. . Спасибо

Подробнее здесь: https://stackoverflow.com/questions/404 ... cular-list
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»