English

Refining the Analysis of Divide and Conquer: How and When

Data Structures and Algorithms 2015-09-28 v3

Abstract

Divide-and-conquer is a central paradigm for the design of algorithms, through which some fundamental computational problems, such as sorting arrays and computing convex hulls, are solved in optimal time within Θ(nlogn)\Theta(n\log{n}) in the worst case over instances of size nn. A finer analysis of those problems yields complexities within O(n(1+H(n1,,nk)))O(n(1+logk))O(nlogn)O(n(1 + \mathcal{H}(n_1, \dots, n_k))) \subseteq O(n(1{+}\log{k})) \subseteq O(n\log{n}) in the worst case over all instances of size nn composed of kk "easy" fragments of respective sizes n1,,nkn_1, \dots, n_k summing to nn, where the entropy function H(n1,,nk)=i=1kninlognni\mathcal{H}(n_1, \dots, n_k) = \sum_{i=1}^k{\frac{n_i}{n}}\log{\frac{n}{n_i}} measures the "difficulty" of the instance. We consider whether such refined analysis can be applied to other algorithms based on divide-and-conquer, such as polynomial multiplication, input-order adaptive computation of convex hulls in 2D and 3D, and computation of Delaunay triangulations.

Keywords

Cite

@article{arxiv.1505.02820,
  title  = {Refining the Analysis of Divide and Conquer: How and When},
  author = {Jeremy Barbay and Carlos Ochoa and Pablo Perez-Lantero},
  journal= {arXiv preprint arXiv:1505.02820},
  year   = {2015}
}
R2 v1 2026-06-22T09:32:16.501Z