链表与数组的区别:
数组:在定义数组时必须组出数组的大小,因为其是连续存放的所以根据索引找元素比较方便,但添加删除元素时比较麻烦,在排序方面有优势
链表:在定义链表时不需要给出其大小,因为其是以指针方式的存放数据所以无法根据索引找元素,但在使用添加删除项比较方便,在排序方面比较麻烦
链表可分为三种:单链表,双链表,循环琏表
下面是链表的部分代码:
// 添加方法
public void add(Object obj) {
Node nodeAdd = new Node();
nodeAdd.setObj(obj);
nodeAdd.setNext(this.getNext());
this.setParent(nodeAdd.getNext());
this.setNext(nodeAdd);
nodeAdd.setParent(this);
}
// 删除方法
public void del() {
if (this.getNext() != null) {
this.getParent().setNext(this.getNext());
this.getNext().setParent(this.getParent());
} else {
this.getParent().setNext(null);
}
}
// 打印方法
public void print() {
System.out.println(this.getObj());
Node node = this;
while (node.getNext() != null) {
System.out.println(node.getNext().getObj());
node = node.getNext();
}
}
//定义两头打印方法
public void printT(){
Node node = this;
while(node.parent!=null){
node=node.getParent();
}
while (node.getNext() != null) {
System.out.println(node.getNext().getObj());
node = node.getNext();
}
}
本文对比了链表与数组的特点及适用场景,并介绍了链表的基本操作,包括添加、删除及打印方法。通过具体代码示例展示了单链表的实现。

被折叠的 条评论
为什么被折叠?



