用java实现输入数据:建立输入函数处理输入的数据,输入m的初值n,输入每个人的密码,建立单向循环链表。
时间: 2024-02-24 08:53:30 浏览: 92
好的,我可以帮您解答这个问题。首先,我们需要建立一个输入函数,用于处理输入的数据并建立单向循环链表。代码如下:
```java
import java.util.Scanner;
class Node {
int num; // 编号
int pwd; // 密码
Node next; // 指向下一个节点的指针
public Node(int num, int pwd) {
this.num = num;
this.pwd = pwd;
this.next = null;
}
}
class CircleLinkedList {
Node head; // 头节点
Node tail; // 尾节点
public CircleLinkedList() {
this.head = null;
this.tail = null;
}
// 在链表尾部添加一个节点
public void addNode(int num, int pwd) {
Node newNode = new Node(num, pwd);
if (head == null) {
head = newNode;
tail = newNode;
tail.next = head;
} else {
tail.next = newNode;
tail = newNode;
tail.next = head;
}
}
// 打印链表中的所有节点
public void printList() {
if (head == null) {
System.out.println("链表为空!");
return;
}
Node cur = head;
do {
System.out.println("编号:" + cur.num + ",密码:" + cur.pwd);
cur = cur.next;
} while (cur != head);
}
}
public class Main {
public static void main(String[] args) {
CircleLinkedList list = new CircleLinkedList();
Scanner scanner = new Scanner(System.in);
System.out.print("请输入m的初值n:");
int n = scanner.nextInt(); // n:人数
System.out.println("请依次输入每个人的密码:");
for (int i = 1; i <= n; i++) {
int pwd = scanner.nextInt(); // 密码
list.addNode(i, pwd);
}
System.out.println("链表中的节点如下:");
list.printList();
}
}
```
这样,我们就完成了用java实现输入数据、建立输入函数处理输入的数据、输入m的初值n、输入每个人的密码、建立单向循环链表的代码。
阅读全文