![]()
![]()
Intuitively, if we think of each point in given set as being a nail sticking out from a board, the convex hull is the shape formed by a tight rubber band that surrounds all the nails.

The convex hull of a set Q of points is the smallest convex polygon P for which each point in set Q is ether on the boundary of P or in its interior. We denote convex hull of Q as CH(Q).

CH(Q) = {po, p1, p3, p10, p12}
In order to established the lower bound for convex hull we reduce sorting
problem into convex hull problem in the sense that convex hull algorithm can
be used to solve sorting problem with little additional work. In other words,
if we solve Hull problem quickly, we can solve sorting problem quickly.
Suppose, we are have an unsorted list of numbers to be sorted.
<x1,
x2, …, xn>,
xi ≥ 0 for all
i. Also, suppose we have an algorithm HULL that constructs the
convex hull of n points in
T(n) time. Our task is to use HULL to solve SORTING
in time T(n) + O(n) where the
O(n) represents additional time to convert the
solution of HULL to the solution of SORTING.
Form the set of two-dimensional points (xi, xi2). These points lie on the
parabola y = x2. Run algorithm HULL to construct the hull. Clearly, every point
is on the hull. Identify the lowest point a on the hull in
O(n) time; this
corresponds to the smallest xi. The order in which the points occur on the
hull counterclockwise from ‘a’ is their sorted order. Thus, we can use HULL
algorithm to sort.
What we have showed that if we had a fast algorithm for the HULL, we could
sort faster than O(n log n); but this is known to be impossible. This implies
that the lower bound of convex hull is same as that of sorting and that is
Ω(n log n).
![]()