Arrays 13: Reverse array in groups | Must Do Coding Questions | Interview Preparation | GFG

preview_player
Показать описание
This video contains Must Do Coding Questions for Companies like Amazon, Microsoft, Adobe, …
from geeksforgeeks platform.

website link:

Topics covered in this video series are:
1.Arrays
2.String
3.Linked List
4.Stack and Queue
5.Tree and BST
6.Heap
7.Recursion
8.Hashing
9.Graph
10.Greedy
11.Dynamic Programming
12.Divide and Conquer
13.Backtracking
14.Bit Magic

Arrays:
13. Reverse array in groups

Code Link:

Complete Playlist:

Intro Music :
Рекомендации по теме
Комментарии
Автор

void reverseInGroups(vector<long long>& arr, int n, int k){
for(int i = 0; i < n; i = i+k){
int start =i;
int end = min(start + k - 1, n - 1);
int temp;
while(start < end){
temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
start++;
end--;
}
}
}

shikhayadav
Автор

cant we do it directly by making divison of k element and sorting it
please reply @krishna teaches

varnikagupta
Автор

your's Might be very big method.
void reverseInGroups(vector<long long>& arr, int n, int k){
int low, high;
for(int i = 0; i < n; i = i + k)
{
low = i;
high = min(i + k - 1, n - 1);
while(low < high)
swap(arr[low++], arr[high--]);
}
}

utkarshsharma
Автор

Bhai abhi views nhi ayenge start mein but bahut aage jaoge...lge rho...brother

themensunderworld
Автор

rehnde bhai mt hi padhaya kr kuch ni samaj aya

mithileshsharma
Автор

#include<stdio.h>
void main()
{
/*
Given an array ar[] of positive integers of size N. Reverse every sub-array group of size K.
N=5, K=3
ar[] = 1 2 3 4 5
sol :- 3 2 1 5 4

N=7, K=5
ar[] = 1 2 3 4 5 6 7
sol :- 5 4 3 2 1 7 6
*/

int i, j, k, N, K, temp;
printf("Enter the size of array :- ");
scanf("%d", &N);
printf("Enter the group size :- ");
scanf("%d", &K);
int ar[N];
printf("Enter array elements :- ");
for(i=0;i<N;i++)
scanf("%d", &ar[i]);
for(i=0;i<N;)
{
j=i;
if(i+K < N) // Checking if (i+groupSize) < Size
{
k = i+K-1;
}
else
{
k = N-1;
}
while(j<k)
{
temp = ar[j];
ar[j] = ar[k];
ar[k] = temp;
j++;
k--;
}
i += K;
}

for(i=0;i<N;i++)
{
printf("%d \t", ar[i]);
}
}

sunpreetsingh
visit shbcf.ru