# Elements greater than the previous and next element in an Array

Given an array of N integers. The task is to print the elements from the array which are greater than their immediate previous and next elements.**Examples** :

Input: arr[] = {2, 3, 1, 5, 4, 9, 8, 7, 5}Output: 3, 5, 9 In above given example 3 is greater than its left element 2 and right element 1. Similar logic is applied to other elements hence our final output is 3, 5, 9.Input: arr[] = {1, 2, 3, 2, 1}Output: 3

Attention reader! All those who say programming isn't for kids, just haven't met the right mentors yet. Join the ** Demo Class for First Step to Coding Course, **specifically **designed for students of class 8 to 12. **

The students will get to learn more about the world of programming in these **free classes** which will definitely help them in making a wise career choice in the future.

**Approach**: Since there is no element on the left of the first element(arr[0]) and there is no element to the right of last element(arr[N-1]) so these two elements will be excluded from the final answer.

Now, traverse the array starting from the index **1 to N-2** and for every element **arr[i]** check if **arr[i] > arr[i-1]** and **arr[i] > arr[i+1]**.

Below is the implementation of the above approach:

## C++

`// C++ program to print elements greater than` `// the previous and next element in an Array` `#include <bits/stdc++.h>` `using` `namespace` `std;` `// Function to print elements greater than` `// the previous and next element in an Array` `void` `printElements(` `int` `arr[], ` `int` `n)` `{` ` ` `// Traverse array from index 1 to n-2` ` ` `// and check for the given condition` ` ` `for` `(` `int` `i = 1; i < n - 1; i++) {` ` ` `if` `(arr[i] > arr[i - 1] and arr[i] > arr[i + 1])` ` ` `cout << arr[i] << ` `" "` `;` ` ` `}` `}` `// Driver Code` `int` `main()` `{` ` ` `int` `arr[] = { 2, 3, 1, 5, 4, 9, 8, 7, 5 };` ` ` `int` `n = ` `sizeof` `(arr) / ` `sizeof` `(arr[0]);` ` ` `printElements(arr, n);` ` ` `return` `0;` `}` |

## Java

`// Java program to print elements greater than` `// the previous and next element in an Array` `class` `GfG` `{` `// Function to print elements greater than` `// the previous and next element in an Array` `static` `void` `printElements(` `int` `arr[], ` `int` `n)` `{` ` ` `// Traverse array from index 1 to n-2` ` ` `// and check for the given condition` ` ` `for` `(` `int` `i = ` `1` `; i < n - ` `1` `; i++)` ` ` `{` ` ` `if` `(arr[i] > arr[i - ` `1` `] && arr[i] > arr[i + ` `1` `])` ` ` `System.out.print(arr[i] + ` `" "` `);` ` ` `}` `}` `// Driver Code` `public` `static` `void` `main(String[] args)` `{` ` ` `int` `arr[] = { ` `2` `, ` `3` `, ` `1` `, ` `5` `, ` `4` `, ` `9` `, ` `8` `, ` `7` `, ` `5` `};` ` ` `int` `n = arr.length;` ` ` `printElements(arr, n);` `}` `}` `// This code is contributed by Prerna Saini` |

## Python3

`# Python 3 program to print elements greater than` `# the previous and next element in an Array` `# Function to print elements greater than` `# the previous and next element in an Array` `def` `printElements(arr, n):` ` ` ` ` `# Traverse array from index 1 to n-2` ` ` `# and check for the given condition` ` ` `for` `i ` `in` `range` `(` `1` `, n ` `-` `1` `, ` `1` `):` ` ` `if` `(arr[i] > arr[i ` `-` `1` `] ` `and` ` ` `arr[i] > arr[i ` `+` `1` `]):` ` ` `print` `(arr[i], end ` `=` `" "` `)` `# Driver Code` `if` `__name__ ` `=` `=` `'__main__'` `:` ` ` `arr ` `=` `[` `2` `, ` `3` `, ` `1` `, ` `5` `, ` `4` `, ` `9` `, ` `8` `, ` `7` `, ` `5` `]` ` ` `n ` `=` `len` `(arr)` ` ` `printElements(arr, n)` ` ` `# This code is contributed by` `# Surendra_Gangwar` |

## C#

`using` `System;` `// c# program to print elements greater than` `// the previous and next element in an Array` `public` `class` `GfG` `{` `// Function to print elements greater than` `// the previous and next element in an Array` `public` `static` `void` `printElements(` `int` `[] arr, ` `int` `n)` `{` ` ` `// Traverse array from index 1 to n-2` ` ` `// and check for the given condition` ` ` `for` `(` `int` `i = 1; i < n - 1; i++)` ` ` `{` ` ` `if` `(arr[i] > arr[i - 1] && arr[i] > arr[i + 1])` ` ` `{` ` ` `Console.Write(arr[i] + ` `" "` `);` ` ` `}` ` ` `}` `}` `// Driver Code` `public` `static` `void` `Main(` `string` `[] args)` `{` ` ` `int` `[] arr = ` `new` `int` `[] {2, 3, 1, 5, 4, 9, 8, 7, 5};` ` ` `int` `n = arr.Length;` ` ` `printElements(arr, n);` `}` `}` |

## PHP

`<?php` `// PHP program to print elements greater than` `// the previous and next element in an Array` `// Function to print elements greater than` `// the previous and next element in an Array` `function` `printElements(` `$arr` `, ` `$n` `)` `{` ` ` `// Traverse array from index 1 to n-2` ` ` `// and check for the given condition` ` ` `for` `(` `$i` `= 1; ` `$i` `< ` `$n` `- 1; ` `$i` `++)` ` ` `{` ` ` `if` `(` `$arr` `[` `$i` `] > ` `$arr` `[` `$i` `- 1] ` `and` ` ` `$arr` `[` `$i` `] > ` `$arr` `[` `$i` `+ 1])` ` ` `echo` `$arr` `[` `$i` `] . ` `" "` `;` ` ` `}` `}` `// Driver Code` `$arr` `= ` `array` `(2, 3, 1, 5, 4, 9, 8, 7, 5);` `$n` `= sizeof(` `$arr` `);` `printElements(` `$arr` `, ` `$n` `);` `// This code is contributed` `// by Akanksha Rai` |

## Javascript

`<script>` `// Javascript implementation of the approach` `// Function to print elements greater than` `// the previous and next element in an Array` `function` `printElements(arr, n)` `{` ` ` `// Traverse array from index 1 to n-2` ` ` `// and check for the given condition` ` ` `for` `(` `var` `i = 1; i < n - 1; i++) {` ` ` `if` `(arr[i] > arr[i - 1] && arr[i] > arr[i + 1])` ` ` `document.write( arr[i] + ` `" "` `);` ` ` `}` `}` `var` `arr = [ 2, 3, 1, 5, 4, 9, 8, 7, 5 ];` `var` `n = arr.length;` `printElements(arr, n);` `// This code is contributed by SoumikMondal` `</script>` |

**Output:**

3 5 9