This is a java program to find the second smallest element with given complexity. Complexity here is minimum space constraints. Inplace sorting and returning second element help achieving the space constraints.
Here is the source code of the Java Program to Find Second Smallest of n Elements with Given Complexity Constraint. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to find the second smallest element of N elements with the minimum space complexity constraints
import java.util.Random;
public class Second_Smallest_Element
{
static int kthminimum(int[] sequence, int k)
{
// Bubble Sort for length of sequence minus k times
for (int i = 0; i < (sequence.length - k); i++)
for (int j = 0; j < sequence.length - 1; j++)
if (sequence[j] > sequence[j + 1])
{
sequence[j] = sequence[j] + sequence[j + 1];
sequence[j + 1] = sequence[j] - sequence[j + 1];
sequence[j] = sequence[j] - sequence[j + 1];
}
return sequence[k - 1];
}
public static void main(String args[])
{
Random random = new Random();
int N = 20;
int[] sequence = new int[N];
for (int i = 0; i < N; i++)
sequence[i] = Math.abs(random.nextInt(1000));
System.out.println("Original Sequence: ");
for (int i = 0; i < N; i++)
System.out.print(sequence[i] + " ");
System.out.println("\nSecond smallest element :\n"
+ kthminimum(sequence, 2));
}
}
Output:
$ javac Second_Smallest_Element.java $ java Second_Smallest_Element Original Sequence: 459 886 873 766 616 878 122 372 453 876 845 965 477 139 788 861 148 5 894 439 Second smallest element : 122 Original Sequence: 695 213 257 62 315 289 234 90 153 721 192 183 676 373 292 928 57 472 200 177 Second smallest element : 62
Related posts:
Java Program to Compute Cross Product of Two Vectors
Java Program to Find the Mode in a Data Set
CharSequence vs. String in Java
Java Program to Implement Sorted Doubly Linked List
Introduction to Using FreeMarker in Spring MVC
Upload and Display Excel Files with Spring MVC
How to Remove the Last Character of a String?
Java Program to Implement Sieve Of Eratosthenes
Guide to the Java Clock Class
Spring Cloud – Bootstrapping
Hướng dẫn sử dụng Java Generics
Programmatic Transaction Management in Spring
Spring Boot - Introduction
Explain about URL and HTTPS protocol
How to Read a Large File Efficiently with Java
Spring Cloud Series – The Gateway Pattern
Join and Split Arrays and Collections in Java
Introduction to Spring Boot CLI
Java Program to Implement Naor-Reingold Pseudo Random Function
Tính kế thừa (Inheritance) trong java
Guide to Selenium with JUnit / TestNG
Java Program to Find Minimum Element in an Array using Linear Search
Java Program to Sort an Array of 10 Elements Using Heap Sort Algorithm
Simple Single Sign-On with Spring Security OAuth2
Rest Web service: Filter và Interceptor với Jersey 2.x (P2)
Java Program to Implement Levenshtein Distance Computing Algorithm
Versioning a REST API
Exploring the New Spring Cloud Gateway
Supplier trong Java 8
The Difference Between map() and flatMap()
Java Program to Check Cycle in a Graph using Topological Sort
Java Scanner hasNext() vs. hasNextLine()