Java数据结构-线性表之单链表应用

thousfeet 2015-07-20

单链表的逆置,就是将现有单链表中的元素的顺序倒置过来。

之前提过单链表的整表创建,那里曾说过两种方法:头插法和尾插法;
在我的Java版本的LinkedList中,添加方法使用的是尾插法。
而单链表的逆置正好是利用头插法来进行。
下面看看演示:
Java数据结构-线性表之单链表应用
下面是我的Java代码实现,建立在之前的代码的基础上

/**
 * @TODO 单链表添加元素,头插法
 * @param e 数据元素
 * @return true
 */
public boolean addFirst(E e){
    FOLinkedNode<E> node = new FOLinkedNode<E>(e);
    if (header.getE() == null) {
        header.setE(e);
    }else{
        node.addNext(header);
        header=node;
    }
    this.size++;
    return true;
}

建议将这段代码copy到之前的Java版本的LinkedList(FOLinkedList)中。

算法时间复杂度为O(n)

相关推荐