0% found this document useful (0 votes)
4 views2 pages

shellsort

The document contains a Java implementation of the Shell sort algorithm, demonstrating modular programming. It includes a method for sorting an array and a driver method for user input and output. The output shows an example of sorting an array of integers before and after applying the Shell sort algorithm.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views2 pages

shellsort

The document contains a Java implementation of the Shell sort algorithm, demonstrating modular programming. It includes a method for sorting an array and a driver method for user input and output. The output shows an example of sorting an array of integers before and after applying the Shell sort algorithm.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

/*S.E.(A). Roll No.:47. Name: Aditi Sunil Gite .

Assignment no. 00 :Implement the Shell sort algorithm implemented in Java


demonstrating shell data structure
with modularity of programming language
*/

import java.util.Scanner;
/// Java implementation of ShellSort
class ShellSort
{
/* An utility function to print array of size n*/
static void printArray(int arr[])
{
int n = arr.length;
for (int i=0; i<n; ++i)
System.out.print(arr[i] + " ");
System.out.println();
}

/* function to sort arr using shellSort */


int sort(int arr[])
{
int n = arr.length;

// Start with a big gap, then reduce the gap


for (int gap = n/2; gap > 0; gap /= 2)
{
// Do a gapped insertion sort for this gap size.
// The first gap elements a[0..gap-1] are already
// in gapped order keep adding one more element
// until the entire array is gap sorted
for (int i = gap; i < n; i += 1)
{
// add a[i] to the elements that have been gap
// sorted save a[i] in temp and make a hole at
// position i
int temp = arr[i];

// shift earlier gap-sorted elements up until


// the correct location for a[i] is found
int j;
for (j = i; j >= gap && arr[j - gap] > temp; j -= gap)
arr[j] = arr[j - gap];

// put temp (the original a[i]) in its correct


// location
arr[j] = temp;
}
}
return 0;
}

// Driver method
public static void main(String args[])
{
int n;
Scanner sc=new Scanner(System.in);
System.out.print("Enter the number of elements you want to store:
");
//reading the number of elements from the that we want to enter
n=sc.nextInt();
//creates an array in the memory of length 10
int[] arr = new int[n];
System.out.println("Enter the elements of the array: ");
for(int i=0; i<n; i++)
{
//reading array elements from the user
arr[i]=sc.nextInt();
}
System.out.println("Enter Array before sorting");

//int arr[] = {12, 34, 54, 2, 3};


System.out.println("Array before sorting");
printArray(arr);

ShellSort ob = new ShellSort();


ob.sort(arr);

System.out.println("Array after sorting");


printArray(arr);
}
}

/*
Output:
Enter the number of elements you want to store: 6
Enter the elements of the array:
45 12 78 34 23 10
Enter Array before sorting
Array before sorting
45 12 78 34 23 10
Array after sorting
10 12 23 34 45 78
*/

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy