我正在尝试如下反转一个列表(使用类 ElementL 创建),我可以使用以下反转它,但反转时会跳过最后一个元素。
public static ElementL reverse(ElementL element){
//Implement reverse here
ElementL previous = null;
ElementL next = element.next;
do{
element.next = previous;
previous = element;
element = next;
next = next.next;
}while(next!=null);
return previous;
}
由于 While 循环中检查下一个元素是否为空的条件,最后一个元素被跳过。有人可以建议更改现有代码,以便可以修改 while 中的条件以对所有元素进行反转。
供参考,类 ElementL 的结构
public class ElementL{
ElementL next;
int data;
public ElementL(int data){
this.data = data;
this.next = null;
}
}