摘要: 1、堆建立首先观察一个堆的向下调整过程。由于不满足最大堆的条件,对于不满足的元素,选择子节点中的最大元素交换。并更新被交换的子节点作为当前节点,继续调整,直至成为叶节点或满足最大堆的条件。 1 #define left(i) (2*i+1) 2 #define right(i) 2*(i+1) 3 ... 阅读全文
posted @ 2015-08-26 17:25 舒克_贝塔 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 题目如下:一个全是32位整数的大数组,除了其中一个数字出现2次外,其余的数字都出现了3次。如何找出那个只出现了两次的数字? 1 int singleNumber3(int a[], int length){ 2 int ones = 0; 3 int twos = 0; 4 ... 阅读全文
posted @ 2015-08-26 16:08 舒克_贝塔 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 关于二叉树的建立,根据前序和中序,建立二叉树。并且总结关于二叉树前序,中序以及后序的非递归遍历。1、二叉树的建立利用递归的思想建立二叉树,如pre[]={8,11,9,3,13,6,15,12,5,7};mid[]={3,9,13,11,6,15,8,5,12,7}分别代表前序和中序的遍历结果。前序... 阅读全文
posted @ 2015-08-26 11:25 舒克_贝塔 阅读(762) 评论(0) 推荐(0) 编辑