Professional Documents
Culture Documents
Druthi Assignment
Druthi Assignment
integers.
Search an element in a
sorted and rotated
Note : There are no duplicates in the list.
Array Examples :
Skip to content
Start Your Coding Journey Now! Login Register
Sign in to GeeksforGeeks with Google
Madhusudhan
pmadhusudhanit@gmail.com
Madhu Sudhan
pasupulatimadhu96@gmail.com
1 more account
approach is
values as 0.
arr[i]
if(temp[arr[i]] == 0) temp[arr[i]] = 1
C++
int arr[] = { 1, 3, 7, 5, 6, 2 };
Madhu Sudhan
int n = sizeof(arr) / sizeof(arr[0]);
findMissing(arr, n); pasupulatimadhu96@gmail.com
}
1 more account
#include <stdio.h>
void findMissing(int arr[], int N)
{
int temp[N + 1];
for (int i = 0; i <= N; i++) {
temp[i] = 0;
}
for (int i = 0; i < N; i++) {
temp[arr[i] - 1] = 1;
}
int ans;
for (int i = 0; i <= N; i++) {
if (temp[i] == 0)
ans = i + 1;
}
printf("%d", ans);
}
/* Driver code */
int main()
{
int arr[] = { 1, 3, 7, 5, 6, 2 };
int n = sizeof(arr) / sizeof(arr[0]);
findMissing(arr, n);
}
// This code is contributed by nikhilm2302
Java
System.out.println(ans);
} Madhu Sudhan
// Driver Code pasupulatimadhu96@gmail.com
public static void main(String[] args)
{ 1 more account
int arr[] = { 1, 3, 7, 5, 6, 2 };
int n = arr.length;
// Function call
findMissing(arr, n);
}
}
P ython3
C#
using System;
public class GFG {
public static void findMissing(int[] arr, in
{
// this will create a new array containing
int[] temp = new int[N + 1];
for (int i = 0; i < N; i++) {
temp[arr[i] - 1] = 1;
}
int ans = 0;
for (int i = Skip
0; ito<=
content
N; i++) {
if (temp[i] == 0)
Start Your Coding Journey
ans
}
Now!
= i + 1; Login Register
Sign in to GeeksforGeeks with Google
Console.WriteLine(ans);
}
static public void Main() Madhusudhan
{ pmadhusudhanit@gmail.com
int[] arr = { 1, 3, 7, 5, 6, 2 };
int n = arr.Length; Madhu Sudhan
pasupulatimadhu96@gmail.com
findMissing(arr, n);
} 1 more account
}
// This code is contributed by nikhilm2302.
Javascript
Output
first N numbers.
Skip to content
Start Your Coding Journey Now! Login
Find the sum of the numbers in the range [1, N] using
Register
Sign in to GeeksforGeeks with Google
the formula N * (N+1)/2. Now find the sum of all the
Madhusudhan
element s in the array and subtract it from the sum of
pmadhusudhanit@gmail.com
the first N natural numbers. This will give the value of
1 more account
sumtotal= N*(N+1)/2.
C++14
#include <bits/stdc++.h>
using namespace std;
// Function to get the missing number
int getMissingNo(int a[], int n)
{
// Given the range of elements
// are 1 more than the size of array
int N = n + 1;
int total = (N) * (N + 1) / 2;
for (int i = 0; i < n; i++)
total -= a[i];
return total;
}
// Driver Code
int main()
{
int arr[] = { 1, 2, 3, 5 };
int N = sizeof(arr) / sizeof(arr[0]);
// Function call
int miss = getMissingNo(arr, N);
cout << miss;
return 0;
}
#include <stdio.h>
// Function to find the missing number
int getMissingNo(int a[], int n)
{
int i, total;
total = (n + 1) * (n + 2) / 2;
Skip to content
for (i = 0; i < n; i++)
Start Your Coding Journey
total Now!
-= a[i];
return total;
Login Register
Sign in to GeeksforGeeks with Google
}
// Driver code Madhusudhan
void main() pmadhusudhanit@gmail.com
{
int arr[] = { 1, 2, 3, 5 }; Madhu Sudhan
pasupulatimadhu96@gmail.com
int N = sizeof(arr) / sizeof(arr[0]);
// Function call 1 more account
int miss = getMissingNo(arr, N);
printf("%d", miss);
}
Java
P ython
Skip to content
Start Your Coding Journey Now!
C# Login Register
Sign in to GeeksforGeeks with Google
// C# program to find missing Number
using System; Madhusudhan
pmadhusudhanit@gmail.com
class GFG {
// Function to find missing number Madhu Sudhan
static int getMissingNo(int[] a, intpasupulatimadhu96@gmail.com
n)
{
int total = (n + 1) * (n + 2) / 2;
1 more account
for (int i = 0; i < n; i++)
total -= a[i];
return total;
}
/* program to test above function */
public static void Main()
{
int[] arr = { 1, 2, 3, 5 };
int N = 4;
int miss = getMissingNo(arr, N);
Console.Write(miss);
}
}
// This code is contributed by Sam007_
PHP
<?php
// PHP program to find
// the Missing Number
// getMissingNo takes array and
// size of array as arguments
function getMissingNo ($a, $n)
{
$total = ($n + 1) * ($n + 2) / 2;
for ( $i = 0; $i < $n; $i++)
$total -= $a[$i];
return $total;
}
// Driver Code
$arr = array(1, 2, 3, 5);
$N = 4;
$miss = getMissingNo($arr, $N);
echo($miss);
// This code is contributed by Ajit.
?>
Javascript
// Function to get the missing number
function getMissingNo(a, n) {
let total = Math.floor((n + 1) * (n +
for (let i = 0; i < n; i++)
Skip to content
total -= a[i];
Start Your Coding Journey
return
}
Now!
total; Login Register
Sign in to GeeksforGeeks with Google
// Driver Code
Madhusudhan
let arr = [ 1, 2, 3, 5 ]; pmadhusudhanit@gmail.com
let N = arr.length;
let miss = getMissingNo(arr, N); Madhu Sudhan
document.write(miss); pasupulatimadhu96@gmail.com
// This code is contributed by Surbhi Tyagi 1 more account
Output
Algorithm:
C++
#include <bits/stdc++.h>
using namespace std;
// Function to get the missing element
int getMissingNo(int a[], int n)
{
int i, total = 1;
for (i = 2; i <= (n + 1); i++) {
total += i;
total -= Skip
a[i to
- content
2];
}
Start Your Coding Journey
return
}
total; Now! Login Register
Sign in to GeeksforGeeks with Google
// Driver Program
int main() Madhusudhan
{ pmadhusudhanit@gmail.com
int arr[] = { 1, 2, 3, 5 };
Madhu Sudhan
int N = sizeof(arr) / sizeof(arr[0]);
pasupulatimadhu96@gmail.com
// Function call
cout << getMissingNo(arr, N); 1 more account
return 0;
}
// This code is contributed by Aditya Kumar (a
#include <stdio.h>
// Function to get the missing element
int getMissingNo(int a[], int n)
{
int i, total = 1;
for (i = 2; i <= (n + 1); i++) {
total += i;
total -= a[i - 2];
}
return total;
}
// Driver code
void main()
{
int arr[] = { 1, 2, 3, 5 };
int N = sizeof(arr) / sizeof(arr[0]);
printf("%d", getMissingNo(arr, N));
}
// This code is contributed by Aditya Kumar (a
Java
// Java implementation
class GFG {
// Function to get the missing number
static int getMissingNo(int a[], int n)
{
int total = 1;
for (int i = 2; i <= (n + 1); i++) {
total += i;
total -= a[i - 2];
}
return total;
}
// Driver Code
public static void main(String[] args)
{
int[] arr = { 1, 2, 3, 5 };
Skip to content
int N = arr.length;
Start Your Coding Journey
// Now!
Function call Login
System.out.println(getMissingNo(arr,
Register
Sign in toNGeeksforGeeks with Google
}
}
Madhusudhan
pmadhusudhanit@gmail.com
// This code is contributed by Aditya Kumar (a
Madhu Sudhan
pasupulatimadhu96@gmail.com
P ython3
1 more account
# Function to get the missing number
def getMissingNo(a, n):
i, total = 0, 1
for i in range(2, n + 2):
total += i
total -= a[i - 2]
return total
# Driver Code
if __name__ == '__main__':
arr = [1, 2, 3, 5]
N = len(arr)
# Function call
print(getMissingNo(arr, N))
# This code is contributed by Mohit kumar
C#
using System;
class GFG {
// Function to find the missing number
static int getMissingNo(int[] a, int n)
{
int i, total = 1;
for (i = 2; i <= (n + 1); i++) {
total += i;
total -= a[i - 2];
}
return total;
}
// Driver Code
public static void Main()
{
int[] arr = { 1, 2, 3, 5 };
int N = (arr.Length);
// Function call
Console.Write(getMissingNo(arr, N));
}
}
// This code is contributed by SoumikMondal
Javascript
Skip to content
Start Your Coding JourneytheNow!
// a represents array
// n : Number of elements in array a
Login Register
Sign in to GeeksforGeeks with Google
function getMissingNo(a, n)
{
let i, total=1; Madhusudhan
pmadhusudhanit@gmail.com
Output
needed.
A ssume a1 ⊕a ⊕a ⊕...⊕a
2 3 n
= a and a1 ⊕a ⊕a
2 3
⊕...⊕a n-1
= b
Then a ⊕b=a n
Skip to content
Below is the implementation of the above approach:
Start Your Coding Journey Now!
C++ Login Register
Sign in to GeeksforGeeks with Google
#include <bits/stdc++.h>
using namespace std; Madhusudhan
pmadhusudhanit@gmail.com
// Function to get the missing number
int getMissingNo(int a[], int n) Madhu Sudhan
{ pasupulatimadhu96@gmail.com
// For xor of all the elements in array
int x1 = a[0];
1 more account
// For xor of all the elements from 1 to n
int x2 = 1;
for (int i = 1; i < n; i++)
x1 = x1 ^ a[i];
for (int i = 2; i <= n + 1; i++)
x2 = x2 ^ i;
return (x1 ^ x2);
}
// Driver Code
int main()
{
int arr[] = { 1, 2, 3, 5 };
int N = sizeof(arr) / sizeof(arr[0]);
// Function call
int miss = getMissingNo(arr, N);
cout << miss;
return 0;
}
#include <stdio.h>
// Function to find the missing number
int getMissingNo(int a[], int n)
{
int i;
// For xor of all the elements in array
int x1 = a[0];
// For xor of all the elements from 1 to n
int x2 = 1;
for (i = 1; i < n; i++)
x1 = x1 ^ a[i];
for (i = 2; i <= n + 1; i++)
x2 = x2 ^ i;
return (x1 ^ x2);
}
// Driver code
void main()
{
int arr[] = { 1, 2, 3, 5 };
int N = sizeof(arr) / sizeof(arr[0]);
Skip to content
Start Your Coding Journeycall
// Function Now! Login
int miss = getMissingNo(arr, N);
Register
Sign in to GeeksforGeeks with Google
printf("%d", miss);
}
Madhusudhan
pmadhusudhanit@gmail.com
P ython3
1 more account
C#
PHP
<?php
// PHP program to find
// the Missing Number
// getMissingNo takes array and
// size of array as arguments
function getMissingNo($a, $n)
{
// For xor of all the
// elements in array
$x1 = $a[0];
// For xor of all the
// elements from 1 to n + 1
$x2 = 1; Skip to content
Start Your Coding Journey
for ($i Now!
= 1; $i < $n; $i++)
$x1 = $x1 ^ $a[$i];
Login Register
Sign in to GeeksforGeeks with Google
for ($i = 2; $i <= $n + 1; $i++)
$x2 = $x2 ^ $i; Madhusudhan
pmadhusudhanit@gmail.com
return ($x1 ^ $x2);
} Madhu Sudhan
pasupulatimadhu96@gmail.com
// Driver Code
$arr = array(1, 2, 3, 5); 1 more account
$N = 4;
$miss = getMissingNo($arr, $N);
echo($miss);
// This code is contributed by Ajit.
?>
Javascript
Output
follows:
All the given array numbers are sor ted and in the
If all element s are present then N is the missing element 1 more account
C++
Java
P ython3
C#
// C# program to implement
// the above approach
using System;
class GFG {
// Function to find the missing number
static int getMissingNo(int[] arr, int n)
{
int i = 0;
while (i < n) {
// as array is of 1 based indexing
// correct position or index numbe
// element is element-1 i.e. 1 wil
// index similarly 2 correct index
// on...
int correctpos = arr[i] - 1;
if (arr[i] < n && arr[i] != arr[co
// if array element should be
// size and array element shou
// its correct position then o
// its correct position or ind
swap(arr, i, correctpos);
}
else {
// if element is at its correc
// just increment i and check
// array elements
i++;
} Skip to content
}
Start Your Coding Journey
// Now!
check for Login by compar Register
missing element
// with their index values Sign in to GeeksforGeeks with Google
for (int index = 0; index < n; index++
if (arr[index] != index + 1) {
return index + 1; Madhusudhan
} pmadhusudhanit@gmail.com
}
return n; Madhu Sudhan
} pasupulatimadhu96@gmail.com
static void swap(int[] arr, int i, int cor 1 more account
{
// swap elements with their correct in
int temp = arr[i];
arr[i] = arr[correctpos];
arr[correctpos] = temp;
}
// Driver code
public static void Main()
{
int[] arr = { 1, 2, 4, 5, 6 };
int N = arr.Length;
// Function call
int ans = getMissingNo(arr, N);
Console.Write(ans);
}
}
// This code is contributed by devendra solunk
Javascript
var arr = [ 1, 2, 3, 5 ];
var N = arr.length;
var ans = getMissingNo(arr, N);
console.log(ans);
// Function to find the missing number
function getMissingNo(arr, n)
{
var i = 0;
while (i < n) {
// as array is of 1 based indexing
// correct position or index numbe
// element is element-1 i.e. 1 wil
// index similarly 2 correct index
// on...
var correctpos = arr[i] - 1;
if (arr[i] < n && arr[i] != arr[co
// if array element should be
// size and array element shou
// its correct position then o
// its correct position or ind
swap(arr, i, correctpos);
}
else {
// if element is at its correc
// just increment i and check
// array elements
i++;
}
}
// check for missing
Skip element by comparin
to content
for (var index = 0; index < arr.length
Start Your Coding Journey
if Now! != index
(arr[index] Login+
return index + 1;
1) { Register
Sign in to GeeksforGeeks with Google
}
}
return n; Madhusudhan
} pmadhusudhanit@gmail.com
function swap(arr, i, correctpos) Madhu Sudhan
{ pasupulatimadhu96@gmail.com
// swap elements with their correct inde
var temp = arr[i]; 1 more account
arr[i] = arr[correctpos];
arr[correctpos] = temp;
}
Output
positive value.
C++
Java
C#
using System;
public class GFG {
// Function to find the missing number
public static void findMissing(int[] arr, in
{
for (int i = 0; i < size; i++) {
if (Math.Abs(arr[i]) - 1 == size)
continue;
int ind = Math.Abs(arr[i]) - 1;
arr[ind] *= -1;
}
int ans = size + 1;
for (int i = 0; i < size; i++) {
if (arr[i] > 0)
ans = i + 1;
}
Console.WriteLine(ans);
}
static public void Main()
{
int[] arr = { 1, 3, 7, 5, 6, 2 };
int n = arr.Length;
Skip to content
// Function call
findMissing(arr, n);
Start Your Coding
}
}
Journey Now! Login Register
Sign in to GeeksforGeeks with Google
// This code is contributed by nikhilm2302
Madhusudhan
pmadhusudhanit@gmail.com
Output
Like 347
Skip to content
Start Your Coding Journey Now!
Previous Next
Login Register
Count the number of Search an element in Sign in to GeeksforGeeks with Google
Madhu Sudhan
pasupulatimadhu96@gmail.com
1 more account
Related Articles
1. Find the missing and repeating number
Ar ticle Contributed By :
GeeksforGeeks
Current difficulty :
Easy
@geeksforgeeks
, Some rights reserved