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:
Show Hibernate/JPA SQL Statements from Spring Boot
Spring Cloud – Bootstrapping
Lớp Collections trong Java (Collections Utility Class)
Java Program to Implement AVL Tree
Java Program to Check Multiplicability of Two Matrices
Rest Web service: Filter và Interceptor với Jersey 2.x (P2)
Java Program to Implement Rope
Spring Boot - Application Properties
Java Program to Perform Partition of an Integer in All Possible Ways
Guide to the Volatile Keyword in Java
Lập trình hướng đối tượng (OOPs) trong java
Spring Boot: Customize Whitelabel Error Page
Fixing 401s with CORS Preflights and Spring Security
Java Program to Implement Binomial Heap
Java Program to Implement AA Tree
Hướng dẫn Java Design Pattern – Visitor
Intro to Inversion of Control and Dependency Injection with Spring
Java Program to Implement HashTable API
Java Program to Implement LinkedTransferQueue API
Spring WebClient Filters
Exploring the Spring Boot TestRestTemplate
Flattening Nested Collections in Java
Send email with authentication
CyclicBarrier in Java
Java Program to Perform Postorder Non-Recursive Traversal of a Given Binary Tree
Configure a Spring Boot Web Application
Java Program to Perform Inorder Non-Recursive Traversal of a Given Binary Tree
Java Program to Implement Naor-Reingold Pseudo Random Function
Toán tử trong java
Java Program to Find Minimum Element in an Array using Linear Search
Java Program to Compute Discrete Fourier Transform Using the Fast Fourier Transform Approach
Collection trong java