0
点赞
收藏
分享

微信扫一扫

链表的增删改查

niboac 2022-04-15 阅读 46
linux

第一 怎么写一个单链表

单链表是由好多个结点连接起来的。 那么一个结点要链接下一个结点。java的表达方式就是这个结点里面必须要生成下一个结点对象。结点里面得有一个存储元素值得变量。

用什么来写一个结点了。需要先写一个类对象模板,在这个模板里面生成这个类对象作为下一个结点,和定义一个变量元素,当然一个类里面需要构造函数。

class ListNode{

int val;

ListNode next;

ListNode(){}

ListNode(int val){

this.val=val;

}

现在有了结点,现在就开始写链表了。一个包含结点数量,还有一些方法或者功能,比如根据索引查找对应的元素,根据索引在某个结点前增加元素,根据索引删除某个结点,为了实现这些方法,我们首先得初始化一个只含头结点得链表。

一个链表怎么用代码表达,根据Java的思想,一切都是类。所以一个链表就是一个类:

class MyLinkedList{

结点数量可以用一个变量表示 int size;

初始链表最起码得有一个头结点吧 ListNode head;

一个结点有了这样才是一个初始化链表,所以定义一个函数或者叫方法作用就是给头结点赋值。

public MyLinkedList(){

size=0;

ListNode head;

pubilc MyLinkedList(){

size=0;

head =new ListNode(0);

}

//获取第i个结点得数值

public int get(int index){

if (index<0||index>=size){

return -1;}

for (int i=0;i<=index;i++){

currentNode =currentNode.next;}

return currentNode.val;

}

public void addAtIndex(int index,int val){

for (int i=0;i<index;i++){

        pre=pred.next;

}

ListNode toAdd=new ListNode(val);

}

举报

相关推荐

0 条评论