示例#1
0
    public WalkMeshTriangle ExtractFirst()
    {
        WalkMeshTriangle result = this.listHead;

        this.listHead = this.listHead.nextListElem;
        return(result);
    }
示例#2
0
 public void Add(WalkMeshTriangle item)
 {
     if (this.listHead == null)
     {
         this.listHead = item;
     }
     else if (this.listHead.next == null && item.cost <= this.listHead.cost)
     {
         item.nextListElem = this.listHead;
         this.listHead     = item;
     }
     else
     {
         WalkMeshTriangle nextListElem = this.listHead;
         while (nextListElem.nextListElem != null && nextListElem.nextListElem.cost < item.cost)
         {
             nextListElem = nextListElem.nextListElem;
         }
         item.nextListElem         = nextListElem.nextListElem;
         nextListElem.nextListElem = item;
     }
 }