java - 编写一个 java 方法 insertNodeBefore,它接受两个整数 int a 和 int b
问题描述
两个给定的类:
public class Node {
int data;
Node next;
Node(int d, Node n){
data = d;
next = n;
}
}
public class List{
Node header;
}
编写一个java方法insertNodeBefore,它接受两个整数int a(这是我们要插入的新节点的数据)和int b(这是我们需要在之前插入新节点的节点的数据)列表mylist ...
以下是我所拥有的,我不确定:
public void insertNodeBefore(int a, int b) {
ListNode newNode = new ListNode();
newNode.data = b;
header.next = newNode;
header.next.next = newNode.next;
}
解决方案
像下面这样插入方法,做一些测试
public void insert(Node head,int a,int before){
Node prev = null;
while(head!=null){
// Matched at head;
if(prev==null && head.a==before){
Node fresh = new Node(a);
fresh.next=head;
head=fresh;
break;
} else if(head.a==before){
Node fresh = new Node(a);
fresh.next=head;
prev.next = fresh;
break;
}
prev = head.next;
head = head.next;
}
}
推荐阅读
- node.js - 在猫鼬中更新用户之前散列密码
- mysql - 数据库 - phpMyAdmin.co 是否已关闭?
- sql - 我需要在 SQL Server 中将此字符串转换为日期时间
- xcode - 我可以从 UIView 中看到什么背景颜色
- c++ - 分而治之合并排序不起作用
- azure - Copyindex 在部署仪表板资源 Azure ARM
- c# - Stream/Byte array to filename/extention/content type
- visual-studio-code - Where to store global binary data for a vscode extension
- mule - Mule http请求将404映射为失败
- spring-boot - 提供 management.port 和 management.context-path 时执行器不工作