Wave Array

PHOTO EMBED

Tue Feb 08 2022 05:46:24 GMT+0000 (Coordinated Universal Time)

Saved by @Uttam #java #gfg #geeksforgeeks #arrays #practice #wavearray

class Solution{

    //Function to swap two elements in the array.    
    public static void swap(int arr[], int x, int y){
        //Use of a temporary variable to swap the elements.
        int tmp = arr[x];
        arr[x] = arr[y];
        arr[y] = tmp;
    }
    //Function to sort the array into a wave-like array.
    public static void convertToWave(int arr[], int n){
        
        //Iterating over the array. 
        for(int i=0;i<n-1;i=i+2){
            //Swapping two neighbouring elements at a time.
		    swap(arr, i, i+1);
		}
        return;
    }
    
}
content_copyCOPY

Wave Array Given a sorted array arr[] of distinct integers. Sort the array into a wave-like array and return it In other words, arrange the elements into a sequence such that arr[1] >= arr[2] <= arr[3] >= arr[4] <= arr[5]..... If there are multiple solutions, find the lexicographically smallest one. Example 1: Input: n = 5 arr[] = {1,2,3,4,5} Output: 2 1 4 3 5 Explanation: Array elements after sorting it in wave form are 2 1 4 3 5. Example 2: Input: n = 6 arr[] = {2,4,7,8,9,10} Output: 4 2 8 7 10 9 Explanation: Array elements after sorting it in wave form are 4 2 8 7 10 9. Your Task: The task is to complete the function convertToWave(), which converts the given array to a wave array. Expected Time Complexity: O(n). Expected Auxiliary Space: O(1). Constraints: 1 ≤ n ≤ 10^6 0 ≤ arr[i] ≤10^7

https://practice.geeksforgeeks.org/problems/wave-array-1587115621/1/?track=DSASP-Arrays&batchId=190