public Animal.Type?ADequeue(Animal.Type pref) { Node curr = Front; Length--; if (pref == Animal.Type.Dog || pref == Animal.Type.Cat) { while (curr != null) { if (curr.Value == pref) { Node temp = curr; if (curr.Prev != null) { curr.Prev.Next = temp.Next; } if (curr.Next != null) { curr.Next.Prev = temp.Prev; } return(curr.Value); } curr = curr.Next; if (curr == Back) { break; } } return(null); } return(null); }
public Animal.Type?AnimalDequeue(Animal.Type pref) { var current = Front; if (pref == Animal.Type.Dog || pref == Animal.Type.Cat) { while (current != null) { if (current.Value == pref) { Node temp = current; current.Prev.Next = temp.Next; current.Next.Prev = temp.Prev; return(current.Value); } current = current.Next; if (current == Rear) { break; } } return(null); } else { return(null); } }
public void AnimalEnqueue(Animal.Type animal) { Node node = new Node(animal); if (Rear == null) { Front = Rear = node; } else { Node prev = Rear; Rear = node; prev.Next = node; node.Prev = prev; } }
public void AEnqueue(Animal.Type animal) { Node node = new Node(animal); if (Front == null) { Front = node; Back = node; } else { Node temp = Back; Back = node; temp.Next = node; node.Prev = temp; } Length++; }
public Animal.Type Dequeue(Animal.Type pref) { //var current = queue.Front; //while(current.Next != null) //{ //if(current.Value == pref) // { // return queue.Dequeue(); // } // current = current.Next; //} if (pref == Animal.Type.Cat || pref == Animal.Type.Dog) { return(queue.Dequeue()); } else { return(default);
public Node(Animal.Type value) { Value = value; }
public void Enqueue(Animal.Type animal) { queue.Enqueue(animal); }