Given a list of integers, rearrange the list such that it consists of alternating minimum maximum elements using only list operations. The first element of the list should be minimum and second element should be maximum of all elements present in the list. Similarly, third element will be next minimum element and fourth element is next maximum element and so on. Use of extra space is not permitted.
Input: [1 3 8 2 7 5 6 4] Output: [1 8 2 7 3 6 4 5] Input: [1 2 3 4 5 6 7] Output: [1 7 2 6 3 5 4] Input: [1 6 2 5 3 4] Output: [1 6 2 5 3 4]
The idea is to sort the list in ascending order first. Then we start popping elements from the end of the list and insert them into their correct position in the list.
Below is the implementation of above idea –
1 8 2 7 3 6 4 5
This article is contributed by Aditya Goel. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Longest alternating subsequence which has maximum sum of elements
- Find minimum and maximum elements in singly Circular Linked List
- Rearrange an array in maximum minimum form | Set 1
- Rearrange an array in maximum minimum form | Set 2 (O(1) extra space)
- Rearrange array in alternating positive & negative items with O(1) extra space | Set 2
- Rearrange array in alternating positive & negative items with O(1) extra space | Set 1
- Modify array by merging elements with addition such that it consists of only Primes.
- Maximum length Subsequence with alternating sign and maximum Sum
- Longest alternating subsequence with maximum sum | Set 2
- Minimum cost to merge all elements of List
- Find the minimum and maximum sum of N-1 elements of the array
- Minimize the difference between minimum and maximum elements
- Sum of minimum and maximum elements of all subarrays of size k.
- Minimum and Maximum Prime Numbers of a Singly Linked List
- Maximum and Minimum element of a linked list which is divisible by a given number k
- Alternating split of a given Singly Linked List | Set 1
- Count minimum frequency elements in a linked list
- Program to print N minimum elements from list of integers
- Product of all Subsequences of size K except the minimum and maximum Elements
- Recursive approach for alternating split of Linked List