ease calculate the running time and please discuss the best-case and worst case of Shellsort algorithm. Running time may pertain to Big-Oh notation. See attached photo fo

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
Please calculate the running time and please discuss the best-case and worst case of Shellsort algorithm.
Running time may pertain to Big-Oh notation. See attached photo for the program
 
 
// Shell Sort in C++ programming
#include <iostream>
using namespace std;
// Shell sort
void shellSort(int array[], int n) {
// Rearrange elements at each n/2, n/4, n/8, ... intervals
for (int interval = n / 2; interval > 0; interval /= 2) {
for (int i
interval; i < n; i += 1) {
array[i];
int temp
int j;
for (j = i; j >= interval && array[j
array[j]
}
array[j]
}
}
interval] > temp; j
interval) {
-=
array[j - interval];
temp;
}
// Print an array
void printArray(int array[], int size) {
int i;
for (i = 0; i < size; i++)
cout « array[i] « " ";
cout <« endl;
}
// Driver code
int main() {
int data[] = {29, 18, 33, 27, 35, 46, 34, 21};
int size =
sizeof (data) sizeof(data[0]);
shellSort(data, size);
cout <« "Sorted array: \n";
printArray (data, size);
}
Transcribed Image Text:// Shell Sort in C++ programming #include <iostream> using namespace std; // Shell sort void shellSort(int array[], int n) { // Rearrange elements at each n/2, n/4, n/8, ... intervals for (int interval = n / 2; interval > 0; interval /= 2) { for (int i interval; i < n; i += 1) { array[i]; int temp int j; for (j = i; j >= interval && array[j array[j] } array[j] } } interval] > temp; j interval) { -= array[j - interval]; temp; } // Print an array void printArray(int array[], int size) { int i; for (i = 0; i < size; i++) cout « array[i] « " "; cout <« endl; } // Driver code int main() { int data[] = {29, 18, 33, 27, 35, 46, 34, 21}; int size = sizeof (data) sizeof(data[0]); shellSort(data, size); cout <« "Sorted array: \n"; printArray (data, size); }
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Matrix multiplication
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education