单链表的逆置,就是将现有单链表中的元素的顺序倒置过来。
之前提过单链表的整表创建,那里曾说过两种方法:头插法和尾插法;
在我的Java版本的LinkedList中,添加方法使用的是尾插法。
而单链表的逆置正好是利用头插法来进行。
下面看看演示:
下面是我的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)
版权声明:本文为博主原创文章,如需转载请注明出处并附上链接,谢谢。