Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- import java.lang.*;
- import java.io.*;
- class Node {
- int data;
- Node next;
- Node(int data) {
- this.data = data;
- this.next = null;
- }
- }
- public class Main {
- public static Node insertAtEnd(int data, Node head) {
- Node curr = head;
- Node newnode = new Node(data);
- if (head == null) {
- return newnode;
- }
- while (curr.next != null) {
- curr = curr.next;
- }
- curr.next = newnode;
- return head;
- }
- public static void swapNode(Node head, int k, int n) {
- Node curr1 = head;
- Node curr2 = head;
- if (head == null || head.next == null) {
- return;
- }
- for (int i = 0; i < k-1; i++) {
- curr1 = curr1.next;
- }
- for (int i = 0; i < n-k; i++) {
- curr2 = curr2.next;
- }
- // System.out.println(curr1.data +" "+ curr2.data);
- // int tmp = curr1.data;
- // curr1.data = curr2.data;
- // curr2.data = tmp;
- Node cn=curr1.next.next;
- Node sn= curr2.next.next;
- Node cc= curr1.next;
- Node sc= curr2.next;
- curr1.next=sc;
- sc.next=cn;
- curr2.next=cc;
- cc.next=sn;
- }
- public static void printList(Node head) {
- Node curr = head;
- while (curr != null) {
- System.out.print(curr.data + " ");
- curr = curr.next;
- }
- System.out.println();
- }
- public static void main(String[] args) throws java.lang.Exception {
- Scanner sc = new Scanner(System.in);
- Node head = null;
- int n = sc.nextInt();
- int k = sc.nextInt();
- head = insertAtEnd(-1, head);
- for (int i = 0; i < n; i++) {
- int data = sc.nextInt();
- head = insertAtEnd(data, head);
- }
- k=Math.min(k, n-k+1);
- // printList(head);
- swapNode(head, k, n);
- printList(head.next);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement