Skip to content

Commit 22a8c37

Browse files
committed
Segregate Even and Odd numbers
1 parent 6f4360f commit 22a8c37

File tree

3 files changed

+60
-1
lines changed

3 files changed

+60
-1
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ Arrangement Rearrangement :
3636
6. Rearrange an array in maximum minimum form (O(1) extra space)
3737
7. Maximum Length Bitonic Subarray | Set 1 (O(n) tine and O(n) space)
3838
8. Segregate 0s and 1s in an array
39+
9. Segregate Even and Odd numbers
3940

4041
Graph :
4142
1. DFS (Iterative & Recursive)
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.array.rearrangement;
2+
3+
public class SegregateEvenandOddnumbers {
4+
5+
/*
6+
Segregate Even and Odd numbers
7+
8+
Input = {12, 34, 45, 9, 8, 90, 3}
9+
Output = {12, 34, 8, 90, 45, 9, 3}
10+
11+
*/
12+
public static void main(String[] arg){
13+
14+
15+
int arr[] = {12, 34, 45, 9, 8, 90, 3};
16+
printArray(arr);
17+
segregateEvenOdd(arr);
18+
System.out.println("");
19+
printArray(arr);
20+
}
21+
22+
private static void segregateEvenOdd(int[] arr) {
23+
24+
int left = 0;
25+
int right = arr.length-1;
26+
27+
while (left<right) {
28+
29+
while (arr[left]%2==0&&left<right) {
30+
left++;
31+
}
32+
33+
while (arr[right]%2==1&&left<right) {
34+
right--;
35+
}
36+
37+
if (left<right) {
38+
int temp = arr[left];
39+
arr[left] = arr[right];
40+
arr[right] =temp;
41+
left++;
42+
right--;
43+
}
44+
45+
}
46+
47+
48+
49+
}
50+
51+
private static void printArray(int[] arr) {
52+
53+
for (int i = 0; i < arr.length; i++) {
54+
System.out.print(arr[i]+", ");
55+
}
56+
}
57+
58+
}

src/com/array/rearrangement/Segregate_0sand1s_array.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
public class Segregate_0sand1s_array {
44

55
/*
6-
*
6+
* Time Complexity: O(n)
77
* Segregate 0s and 1s in an array
88
*
99
Input array = [0, 1, 0, 1, 0, 0, 1, 1, 1, 0]

0 commit comments

Comments
 (0)