
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Find Number of Array Elements Smaller Than a Given Number in Java
An array is a linear data structure in which elements are stored in contiguous memory locations.
As per the problem statement, finding number elements smaller than a given number means we need to compare and count only the smaller elements in the array.
Let's explore the article to see how it can be done by using Java programming language.
To show you some instances
Instance-1
Suppose we have the below array
[10, 2, 3, -5, 99, 12, 0, -1] and the number is 9 Now the number of elements that are smaller than 9 are [2, 3, -5,0, -1] = 5 elements
Instance-2
Suppose we have the below array
[55, 10, 29, 74, 12, 45, 6, 5, 269] and the number is 50 Now the number of elements that are smaller than 50 are [10, 29, 12, 45, 6, 5] = 6
Instance-3
Suppose we have the below array
[556, 10, 259, 874, 123, 453, -96, -54, -2369] and the number is 0 Now the number of elements that are smaller than 0 are [-96, -54, -2369] = 3
Algorithm
Algorithm-1
Step 1 ? Store the array elements
Step 2 ? Use a for loop to traverse through all array elements.
Step 3 ? Compare all elements with the number
Step 4 ? Use a counter to count all elements that are smaller than that number and print the count.
Algorithm-2
Step 1 ? Store the array elements
Step 2 ? Sort the array.
Step 3 ? Compare and find the index of the element larger than the given number
Step 4 ? To find the number of elements smaller than the given number we print the index we obtained.
Syntax
To get the length of an array (number of elements in that array), there is an inbuilt property of array i.e length.
Below refers to the syntax of it ?
array.length
where, ?array' refers to the array reference.
You can use the Arrays.sort() method to sort the array in ascending order.
Arrays.sort(array_name);
Multiple Approaches
We have provided the solution in different approaches.
Without Using Sorting
By Using Sorting
Let's see the program along with its output one by one.
Approach-1: Without Using Sorting
In this approach, we use a for loop to compare all elements with the number and only count the smaller ones.
Example
public class Main { public static void main(String[] args) { // The array elements int arr[] = { 556, 10, 259, 874, 123, 453, -96, -54, -2369}, num = 0; System.out.println("The array elements are-"); // Print the array elements for (int i : arr) { System.out.print(i + ", "); } // The counter two count all elements smaller than the number int count = 0; // Count all elements smaller than num for (int i = 0; i < arr.length; i++) { if (arr[i] < num) { count++; } } System.out.println("\nThe number of array elements that are smaller than " + num + " are " + count); } }
Output
The array elements are- 556, 10, 259, 874, 123, 453, -96, -54, -2369, The number of array elements that are smaller than 0 are 3
Approach-2: By Using Sorting
In this approach, we sort the array using Arrays.sort() method and then find the index of the first occurrence where the element is larger than the number. The index is the number of elements that are lesser than the number.
Example
import java.util.Arrays; public class Main{ public static void main(String[] args) { // The array elements int arr[] = { 556, 10, 259, 874, 123, 453, -96, -54, -2369}, num = 20; System.out.println("The array elements are-"); // Print the array elements for (int i : arr) { System.out.print(i + ", "); } // Sort the array Arrays.sort(arr); // Find the index of the first element in the array greater than the given number int index = 0; for (int i = 0; i < arr.length; i++) { if (arr[i] > num) { index = i; break; } } // To find the number of elements smaller than // the number we print the index we onbtained System.out.println("\nThe number of array elements that are lesser than " + num + " are " + (index)); } }
Output
The array elements are- 556, 10, 259, 874, 123, 453, -96, -54, -2369, The number of array elements that are lesser than 20 are 4
In this article, we explored how to find the number of elements smaller than a given number in an array by using Java programming language.