Advertisement
Guest User

Untitled

a guest
Mar 25th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.91 KB | None | 0 0
  1.  public class PriorityQueue<T>
  2.     {
  3.         private List<T> _quenue = new List<T>();
  4.         private Comparison<T> _comparison;
  5.         /// <summary>
  6.         /// возвращаяет кол-во эл-тов в очереди
  7.         /// </summary>
  8.         public int Count => _quenue.Count;
  9.  
  10.         public PriorityQueue(Comparison<T> comparison)
  11.         {
  12.             _comparison = comparison;
  13.         }
  14.  
  15.         public void Enqueue(T obj)
  16.         {
  17.             _quenue.Add(obj);
  18.             _quenue.Sort(_comparison);
  19.         }
  20.  
  21.         public T Dequeue()
  22.         {          
  23.                 T elem = _quenue[0];
  24.                 _quenue.Remove(elem);
  25.                 return elem;                  
  26.         }
  27.  
  28.         public T Peek()
  29.         {
  30.             return _quenue[0];
  31.         }
  32.  
  33.         public T[] ToArray()
  34.         {
  35.             return _quenue.ToArray();
  36.         }
  37.        
  38.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement