Я создал 3 класса: MainClass, Node, FunctionClass;
Теперь я хочу вставить узел в любой момент, пожалуйста, дайте мне знать, что не так с моим кодом, почему он не работает, есть ли логическийerror1
в Node Class у меня есть только один выбор: добавить два конструктора, дайте мне знать, может ли помочь конструирование
public class Node {
public int data;
public Node next;
public static int count = 0;
Node(int data)
{
this.data = data;
next = null;
count++;
}
Node ()
{
this.data = 0;
next = null;
count++;
}}
// внутри класса функций я использовал этот метод;
public void inssrtatAnyPoint(int data, int pos)
{
Node last = findNode(pos);
if (Node.count==0) this.insert(data);
else{
Node temp = last;
last = new Node(data);
last.next = temp;
}}
public Node findNode(int d)
{
Node found = head;
while (found.next!=null)
{
if (found.data == d) break;
found = found.next;
}
return found;
}
public void insert(int data)
{
if (head == null){ head = new Node(data);}
else
{
Node newnode = new Node(data);
newnode.next = head;
head = newnode;
}}
// процедуры для основного класса здесь
FunctionalClass fc = new FunctionalClass();
fc.printList();
fc.insert(10);
fc.insert(20);
fc.insert(30);
fc.inssrtAtEnd(1);
System.out.println("list before");
fc.printList();
fc.inssrtatAnyPoint(25, 20);
System.out.println("list after");
fc.printList();FunctionalClass fc = new FunctionalClass();
fc.printList();
fc.insert(10);
fc.insert(20);
fc.insert(30);
fc.inssrtAtEnd(1);
System.out.println("list before");
fc.printList();
fc.inssrtatAnyPoint(25, 20);
System.out.println("list after");
fc.printList();