uTank-木头
每一个你不满意的现在,都有一个你没有努力的曾经。
02 2015 档案
哈夫曼树(Huffman Tree)与哈夫曼编码
摘要:【哈夫曼树的定义】 假设有n个权值{w1,w2,...,wn},构造一颗有n个叶子结点的二叉树,每个叶子结点带权Wk,每个叶子的路径长度为Lk,则其中带权路径长度WPL最小的二叉树称做哈夫曼树。 【一些定义】 从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称做路径长度。 阅读全文
posted @ 2015-02-12 16:51 uTank 阅读(410) 评论(0) 推荐(0)
堆(Heap)和二叉堆(Binary heap)
摘要:堆(Heap)The operations commonly performed with a heap are:create-heap: create an empty heapheapify: create a heap out of given array of elementsfind-ma... 阅读全文
posted @ 2015-02-11 15:08 uTank 阅读(2551) 评论(0) 推荐(0)
优先队列(Priority Queue)
摘要:【最大堆实现优先队列】 用最大堆来实现优先队列,每一次入队操作就是堆的插入操作,每一次出队操作就是删除堆顶节点。 【入队操作】 1、插入新节点5: 2、新节点5上浮到合适位置: 【出队操作】 1、把原堆顶节点10“出队”: 2、最后一个节点1替换到堆顶位置: 3、节点1下沉,节点9成为新堆顶: 优先 阅读全文
posted @ 2015-02-11 09:40 uTank 阅读(463) 评论(0) 推荐(0)
平衡二叉树(Balanced Binary Tree)
摘要:平衡二叉树(Balanced Binary Tree)/AVL树: 阅读全文
posted @ 2015-02-10 10:50 uTank 阅读(183) 评论(0) 推荐(0)
PAT (Basic Level) Practise:1004. 成绩排名
摘要:【题目链接】读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。输入格式:每个测试输入包含1个测试用例,格式为 第1行:正整数n 第2行:第1个学生的姓名 学号 成绩 第3行:第2个学生的姓名 学号 成绩 ... ... ... 第n+1行:第n个学生的姓名 学号 ... 阅读全文
posted @ 2015-02-07 18:26 uTank 阅读(2086) 评论(0) 推荐(0)
PAT (Basic Level) Practise:1029. 旧键盘
摘要:【题目链接】旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式:输入在2行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过80个字符的串,由字母A-Z(包括大、小写)、数字0-9、以及... 阅读全文
posted @ 2015-02-06 15:30 uTank 阅读(1240) 评论(0) 推荐(0)
二叉搜索树(Binary Search Tree)
摘要:二叉搜索树(BST,Binary Search Tree),也称二叉排序树或二叉查找树。二叉搜索树:一棵二叉树,可以为空;如果不为空,满足以下性质:非空左子树的所有键值小于其根结点的键值;非空右子树的所有键值大于其根结点的键值;左右子树都是二叉搜索树;Wiki中的定义:The leftsubtree... 阅读全文
posted @ 2015-02-06 14:25 uTank 阅读(355) 评论(0) 推荐(0)
树和二叉树(代码)
摘要:【代码】 1 #include 2 #include 3 4 typedef int ElementType; 5 6 typedef struct TreeNode { 7 ElementType Data; 8 struct TreeNode *Left;... 阅读全文
posted @ 2015-02-05 11:35 uTank 阅读(478) 评论(0) 推荐(0)
二叉树的常见操作
摘要:【输出二叉树中的叶子结点】 无论前序、中序、后序遍历,叶子结点的输出顺序都是一样的吗??都是一样的,输出顺序为:从树的左边到右边叶子!!在二叉树的遍历算法中增加检测结点的“左右子树是否都为空”。 【求二叉树的叶子结点数】 【求二叉树的高度】 【由两种遍历序列确定二叉树】 已知三种遍历中的任意两种遍历 阅读全文
posted @ 2015-02-04 15:05 uTank 阅读(672) 评论(0) 推荐(0)
二叉树的非递归遍历
摘要:【中序遍历】中序遍历非递归遍历算法:遇到一个结点,就把它压栈,并去遍历它的左子树;当左子树遍历结束后,从栈顶弹出这个结点并访问它;然后按其右指针再去中序遍历该结点的右子树; 1 void InOrderTraversal_ext(BinTree Bt) 2 { 3 BinTree pStac... 阅读全文
posted @ 2015-02-03 10:51 uTank 阅读(283) 评论(0) 推荐(0)
What books does Bjarne Stroustrup suggest to master C++?
摘要:QUESTION :What books does Bjarne Stroustrup suggest to master C++?ANSWER:A Tour of C++is a quick (about 180 pages) tutorial overview of all of standar... 阅读全文
posted @ 2015-02-03 10:12 uTank 阅读(251) 评论(0) 推荐(0)