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 Find Path Between Two Nodes in a Graph
Java Program to Implement Cartesian Tree
Lấy ngày giờ hiện tại trong Java
New Features in Java 10
Spring Security OAuth2 – Simple Token Revocation
Java Copy Constructor
Java Program for Douglas-Peucker Algorithm Implementation
Introduction to PCollections
Java Program to Implement Heap
Java – InputStream to Reader
HttpClient 4 – Send Custom Cookie
Java Program to Find SSSP (Single Source Shortest Path) in DAG (Directed Acyclic Graphs)
HttpClient Connection Management
Iterable to Stream in Java
Introduction to Spring Cloud CLI
Java InputStream to Byte Array and ByteBuffer
Giới thiệu Swagger – Công cụ document cho RESTfull APIs
Kiểu dữ liệu Ngày Giờ (Date Time) trong java
How to Define a Spring Boot Filter?
Spring @Primary Annotation
RegEx for matching Date Pattern in Java
Inheritance and Composition (Is-a vs Has-a relationship) in Java
Java Program to Implement Treap
Check if there is mail waiting
Java Program to Implement the Schonhage-Strassen Algorithm for Multiplication of Two Numbers
Convert Hex to ASCII in Java
Java Program to Implement Disjoint Sets
Mệnh đề Switch-case trong java
Java Program to Implement Multi-Threaded Version of Binary Search Tree
Java Program to Find Nearest Neighbor for Dynamic Data Set
Number Formatting in Java
Giới thiệu JDBC Connection Pool