コード例 #1
0
        public void Put(double value)
        {
            var item = new BufferItem {
                Value = value, Next = null
            };

            if (Head == null)
            {
                Tail = Head = item;
            }
            else if (Head.Value < item.Value)
            {
                AddMaxItem(item);
            }
            else if (Tail.Value > item.Value)
            {
                AddMinItem(item);
            }
            else
            {
                AddMiddleItem(item);
            }
        }
コード例 #2
0
 void AddMinItem(BufferItem item)
 {
     Tail.Previous = item;
     item.Next     = Tail;
     Tail          = item;
 }
コード例 #3
0
 void AddMaxItem(BufferItem item)
 {
     Head = Tail = item;
 }