给数据结构贴标签

  • 链表——对于数字的访问和排序,链表貌似不太在行。
  • 数组——对这个数组里的元素进行排序吗?恐怕开销会比较大。
  • 二叉树——非常适合处理排序的问题。
  • 堆——非常适用于基本的排序,并且能够记录最大值和最小值。它实际上很有意思——如果你有两个堆,就能够跟踪最大的那一半元素和最小的
    那一半元素。最大的一半保存在小顶堆(min heap)里,其中最小的那个元素在顶端。最小的一半则保存在大顶堆(max heap)里,其中最大的那
    个元素在顶端。现在,有了这些数据结构,整个数组中的中间数就很有可能位于这两个堆的顶端。如果这两个堆的大小不一样,你还可以从一个堆
    里取出一个元素将它推进到另外一个堆里,很快地将它们“调整”好。
posted @ 2013-10-06 16:42  诗宝smile  阅读(153)  评论(0编辑  收藏  举报