Optimization Perspectives on Shellsort
Authors:
Oscar Skean,
Richard Ehrenborg,
Jerzy W. Jaromczyk
Abstract:
Shellsort is a sorting method that is attractive due to its simplicity, yet it takes effort to analyze its efficiency. The heart of the algorithm is the gap sequence chosen a priori and used during sorting. The selection of this gap sequence affects the efficiency of Shellsort, and thus drives both its theoretical and experimental analysis. We contribute to Shellsort by identifying efficient gap s…
▽ More
Shellsort is a sorting method that is attractive due to its simplicity, yet it takes effort to analyze its efficiency. The heart of the algorithm is the gap sequence chosen a priori and used during sorting. The selection of this gap sequence affects the efficiency of Shellsort, and thus drives both its theoretical and experimental analysis. We contribute to Shellsort by identifying efficient gap sequences based on new parameterized functions. Specifically, a parameter grid-search identifies optimal parameters for different input sizes for sorting by observing minimal overhead in three categories: number of comparisons, number of exchanges, and running time. We report that our method finds sequences that outperform state-of-the-art gap sequences concerning the number of comparisons for chosen small array sizes. Additionally, our function-based sequences outperform the running time of the Tokuda sequence for chosen large array sizes. However, no substantial improvements were observed when minimizing the number of exchanges.
△ Less
Submitted 31 December, 2022;
originally announced January 2023.
Curricular Complexity Versus Quality of Computer Science Programs
Authors:
Gregory L. Heileman,
Hayden W. Free,
Johnny Flynn,
Camden Mackowiak,
Jerzy W. Jaromczyk,
Chaouki T. Abdallah
Abstract:
In this research paper we describe a study that involves measuring the complexities of undergraduate curricula offered by computer science departments, and then comparing them to the quality of these departments, where quality is determined by a metric-based ranking system. The study objective was to determine whether or not a relationship exists between the quality of computer science departments…
▽ More
In this research paper we describe a study that involves measuring the complexities of undergraduate curricula offered by computer science departments, and then comparing them to the quality of these departments, where quality is determined by a metric-based ranking system. The study objective was to determine whether or not a relationship exists between the quality of computer science departments and the complexity of the curricula they offer. The relationship between curricular complexity and program quality was previously investigated for the case of undergraduate electrical engineering programs, with surprising results. It was found that if the US News & World Report Best Undergraduate Programs ranking is used as a proxy for quality, then a statistically significant difference in curricular complexities exists between higher and lower quality electrical engineering programs. Furthermore, it was found that higher quality electrical engineering programs tend to have lower complexity curricula, and vice versa. In the study reported in this paper, a sufficient amount of data was collected in order to determine that an inverse relationship between program quality and curricular complexity also exists in undergraduate computer science departments. This brings up an interesting question regarding the extent to which this phenomenon exists across the spectrum of STEM disciplines.
△ Less
Submitted 11 June, 2020;
originally announced June 2020.