摘要: 前言一道比较简单的二叉树题目,需要了解的知识点,当前结点为i,采用数组存储树的每个结点:左孩子为2 * i右孩子为2 * i + 1吐嘈一下,其实我的代码功底在公司应该是非常强的,哎,不搞开发搞运维真是感觉有些可惜啊!题目图片题目描述如上所示,由正整数1,2,3……组成了一颗特殊二叉树。我们已知这个二叉树的最后一个结点是n。现在的问题是,结点m所在的子树中一共包括多少个结点。 比如,n = 12,m = 3那么上图中的结点13,14,15以及后面的结点都是不存在的,结点m所在子树中包括的结点有3,6,7,12,因此结点m的所在子树中共有4个结点。 输入: 输入数据包括多行,每... 阅读全文
posted @ 2013-02-26 23:14 java程序员填空 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 前言用最大堆实现的最大优先级队列一般用来进行作业调度的问题用最小堆实现的最小优先级队列一般用于贪心等概念优先级队列是一种用来维护一组元素构成的集合S的数据结构,这一组元素中的每一个都有一个关键字key。这里以最大堆实现的最大优先级队列为例,支持如下操作:extract_max(A, n) : 去掉并返回A中的具有最大关键字的元素increase_key(A, i, key) : 将元素A[i]关键字变为key并且保持最大优先级队列的性质实现extract_max/** * Description:从节点i开始,维护以i为根节点的子树,使以i为根的子树为最大堆(非递归) */ void ma.. 阅读全文
posted @ 2013-02-26 16:13 java程序员填空 阅读(126) 评论(0) 推荐(0) 编辑
摘要: \? 问号字符 \’单引号符 \"双引号符 \\反斜线符"\" \0空字符(Null) \a鸣铃 \b退格 \f走纸换页 \n换行 \r回车 \t横向跳到下一制表位置 \v竖向跳格(垂直制表) \ddd任意字符 三位八进制 \xhh任意字符 二位十六进制 阅读全文
posted @ 2013-02-26 11:45 java程序员填空 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 前言这道题耗时将近半个月,期间我复习了几处基础知识贪心算法堆排序哈夫曼树最后在参考我同学的博客,终于通过最小堆构建最小优先级队列ac了这道题!优先级队列参考链接:http://blog.csdn.net/zinss26914/article/details/8614022推荐一下我同学的博客,内容很好而且人也很犀利 :http://blog.csdn.net/cscmaker/article/details/8138870题目题目描述: 在一个果园里,小明已经将所有的水果打了下来,并按水果的不同种类分成了若干堆,小明决定把所有的水果合成一堆。每一次合并,小明可以把两堆水果合并到一起,消... 阅读全文
posted @ 2013-02-26 07:36 java程序员填空 阅读(266) 评论(0) 推荐(0) 编辑