用Java写在一个有序单链表(元素为整数,升序排列)中插入一个整数x,保证插入后的单链表仍然为升序。(给出代码)
时间: 2024-10-11 11:18:08 浏览: 62
有序整型数组,插入一个动态输入整数,保证插入后依然有序。(利用冒泡排序)
在Java中,你可以创建一个`Node`类来表示链表节点,并在`LinkedList`类中添加插入函数。以下是实现这个功能的一个简单示例:
```java
public class Node {
int data;
Node next;
public Node(int data) {
this.data = data;
this.next = null;
}
}
public class LinkedList {
private Node head;
// 插入函数,遍历链表找到合适位置并插入新节点
public void insert(int x) {
Node newNode = new Node(x);
// 如果链表为空,直接设置头节点
if (head == null) {
head = newNode;
} else {
Node current = head;
while (current.next != null && current.next.data < x) {
current = current.next;
}
// 找到插入位置,插入新节点
newNode.next = current.next;
current.next = newNode;
}
}
// 省略其他链表操作的实现...
}
```
在这个例子中,我们从头节点开始遍历链表,直到找到第一个大于等于`x`的数据点,然后将新节点插入其后。这样可以保持链表的升序特性。
阅读全文