title: why is merge sort preferred over quick sort for sorting linked lists
body: <p>I read the following in a forum :</p>
  
  <blockquote>
    <p>Merge sort is very efficient for
    immutable datastructures like linked
    lists</p>
  </blockquote>
  
  <p>and</p>
  
  <blockquote>
    <p>Quick sort is typically faster than
    merge sort when the data is stored in
    memory. However, when the data set is
    huge and is stored on external devices
    such as a hard drive, merge sort is
    the clear winner in terms of speed. It
    minimizes the expensive reads of the
    external drive</p>
  </blockquote>
  
  <p>and </p>
  
  <blockquote>
    <p>when operating on linked lists, merge sort only requires a small constant amount of auxiliary storage</p>
  </blockquote>
  
  <p>Can someone help me understand the above argument? why is merge sort preferred for sorting huge linked lists? and how does it minimize expensive reads to an external drive? basically i want to understand why one would choose merge sort for sorting a big linked list.</p>