0
public void add(Racer o) {

        LinkedListNode added = new LinkedListNode(o);
        LinkedListNode first = head;
        LinkedListNode last = tail;

        Racer First = (Racer) first.getElement();
        Racer Added = (Racer) added.getElement();
        Racer Last = (Racer) last.getElement();

        if (First.time >= Added.time) {
          added.setNext(head);
          head = added;
        }

        else {
          while(true){
                      .
                      .
                      .
                      .
                      .
                      .

我必须对 Linked List 中赛马的时间记录进行排序

我真的不明白如何编写我的 SortedLinkedList 的 add 方法......

我在上面写了一些代码开始

谁能帮帮我吗?

4

1 回答 1

1

已完成的 else 子句:

else {
          LinkedListNode pre = first;
          LinkedListNode node = first.getNextNode();
          while(true){
              if(node == null || node.getElement().time >= added.getElement().time) break;
              pre = node;
              node = node.getNext();
          }
          pre.setNext(added);
          added.setNext(node);
          if(node == null) tail = added;
}

请注意,getNextandsetNext方法应该定义为名称所暗示的内容。

于 2013-09-09T02:35:27.220 回答