摘要: 1.问题描述: 我们将乱序的红白蓝三色小球排列成有序的红白蓝三色的同颜色在一起的小球组。这个问题之所以叫荷兰国旗,是因为我们可以将红白蓝三色小球想象成条状物,有序排列后正好组成荷兰国旗。 2.荷兰国旗问题与数组: 给定一个数组arr,和一个数num,请把小于num的数放到数组的左边,等于num的数放 阅读全文
posted @ 2019-03-06 13:44 stone1234567890 阅读(591) 评论(0) 推荐(0) 编辑
摘要: 1.原理(本次以大根堆为例进行讲解,小根堆同理): 利用大根堆(小根堆)堆顶记录的是最大关键字(最小关键字)的特性,使得每次可以将堆顶的最值取出依次放入数组中,最后得到一个依次增大(减小)的序列。 (1)大根堆堆实际上是一棵完全二叉树,其任何一个非叶节点满足: key[i] >= k[2i+1]&& 阅读全文
posted @ 2019-03-06 09:30 stone1234567890 阅读(1470) 评论(0) 推荐(0) 编辑