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:
Spring 5 Testing with @EnabledIf Annotation
Java Program to Implement AA Tree
Hướng dẫn Java Design Pattern – Strategy
Java – Write to File
Java Program to Implement Affine Cipher
HttpClient 4 Cookbook
The Modulo Operator in Java
Number Formatting in Java
Guide to Java 8’s Collectors
Hướng dẫn Java Design Pattern – Composite
Object cloning trong java
A Guide to BitSet in Java
Spring Web Annotations
Java Program to Implement Fermat Primality Test Algorithm
Java Program to Implement SimpeBindings API
Create a Custom Auto-Configuration with Spring Boot
Collect a Java Stream to an Immutable Collection
Spring MVC Tutorial
Chương trình Java đầu tiên
Introduction to the Java ArrayDeque
Hướng dẫn Java Design Pattern – Memento
Spring Boot - Sending Email
Java Program to Implement Fibonacci Heap
Java Program to Implement Quick sort
Guide to Java Instrumentation
Servlet 3 Async Support with Spring MVC and Spring Security
Vòng lặp for, while, do-while trong Java
Extra Login Fields with Spring Security
Comparing Strings in Java
Java Program to Implement Circular Singly Linked List
Spring Security 5 for Reactive Applications
Cachable Static Assets with Spring MVC