title: build heap time complexity worst case vs upper bound / tight upper bound
body: <p><a href="http://www.geeksforgeeks.org/g-fact-85/" rel="nofollow">HERE</a> it is said that the worst case time complexity of building a heap is O(nlogn) but upper bound is O(n). </p>
  
  <p>How is a upper bound different from worst case time complexity and when one makes more sense over other. 
  And is tight upper bound any different ?  </p>