Problem merge sorted linked list

import java.util.*;

/**

  • merge
    */
    public class merge {
    static private node head, head1 = null, head2 = null, tail;
    static private long i = 0, c1 = 0, c2 = 0, n1, n2, size = 0;
    static Scanner sc = new Scanner(System.in);

    static class node {
    int data;
    node next;

     node(int data) {
         this.data = data;
         this.next = null;
     }
    

    }

    private static node add(node head, int data) {
    node n = new node(data);
    node temp = head;
    if (head == null) {
    head = n;
    return head;
    }
    while (temp.next != null) {
    temp = temp.next;
    }
    temp.next = n;
    return head;
    }

    private static void display(node head) {
    node temp = head;
    while (temp != null) {
    System.out.print(temp.data + " ");
    temp = temp.next;
    }
    }

    private static node getnodeat(node head, long i) {
    long c = 0;
    node temp = head;
    while (c < i) {
    temp = temp.next;
    c++;
    }

     return temp;
    

    }

    private static void merge() {
    long i = 0;

     while (i < (n1 + n2)) {
    
         if (c1 == (n1)) {
             node t = getnodeat(head, i - 1);
    
             node l = getnodeat(head2, c2);
             t.next = l;
             break;
         } else if (c2 == (n2)) {
             node t = getnodeat(head, i - 1);
             node l = getnodeat(head1, c1);
    
             t.next = l;
             break;
         } else {
             node temp1 = getnodeat(head1, c1);
             node temp2 = getnodeat(head2, c2);
             node temp;
             if (temp1.data < temp2.data) {
                 temp = new node(temp1.data);
                 c1++;
             } else if (temp2.data < temp1.data) {
                 temp = new node(temp2.data);
                 c2++;
             } else {
                 temp = new node(temp1.data);
                 c1++;
                 c2++;
             }
    
             if (head == null) {
                 head = temp;
                 tail = temp;
                 size++;
             } else {
                 tail.next = temp;
                 tail = temp;
                 size++;
             }
         }
         i++;
     }
    

    }

    public static void main(String[] args) {
    long t = sc.nextInt();
    while (t > 0) {
    n1 = sc.nextInt();

         for (long i = 1; i <= n1; i++) {
             head1 = add(head1, sc.nextInt());
         }
         n2 = sc.nextInt();
    
         for (long i = 1; i <= n2; i++) {
             head2 = add(head2, sc.nextInt());
         }
         // System.out.println(getnodeat(head1, 0).data);
         // System.out.println("Linked List 1");
         // display(head1);
         // System.out.println("Linked List 2");
         // display(head2);
         merge();
         // System.out.println("Size=" + size);
         display(head);
         System.out.println();
         head = null;
         tail = null;
         head1 = null;
         head2 = null;
         size = 0;
         c1 = 0;
         c2 = 0;
    
         t--;
     }
    

    }
    }
    My code worked for every test case I run but when I submitted it it shows run time error please help sir/ma’am

try and dry run your code for:
1
2
1 1
2
1 1

also please save your code on ide.it is not legible if u paste it here.

you have shared the wrong code

Please mark your doubt as resolved, if you are satisfied and you can give ratings too, based on my response :slight_smile: