2020年3月11日
摘要: 题目:点此 题目描述 在这个问题中,给定一个值S和一棵树。在树的每个节点有一个正整数,问有多少条路径的节点总和达到S。路径中节点的深度必须是升序的。假设节点1是根节点,根的深度是0,它的儿子节点的深度为1。路径不必一定从根节点开始。 输入格式 第一行是两个整数N和S,其中N是树的节点数。 第二行是N 阅读全文
posted @ 2020-03-11 20:54 eason66 阅读(192) 评论(0) 推荐(0) 编辑
  2020年3月7日
摘要: (最近没写博客,现在恢复了) 题目:点此 题目描述: 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字(n不超过20)。 思路:{ 对于这道题,很容易想到两重循环,一重累加求和,另一重计算阶乘。 但我用的是优化过的方法。 根据阶乘的定义n!=(n-1)!*n,对于任意一个整数n, 阅读全文
posted @ 2020-03-07 10:31 eason66 阅读(165) 评论(0) 推荐(1) 编辑
  2020年2月14日
摘要: 数转换成二叉树:使用孩子兄弟表示法。 二叉树转换成树:将二叉树的右孩子转换成兄弟。 森林转换成二叉树:将森林中的每一棵树都转换成二叉树,然后把森林中每个结点连起来,调整角度,使其成为二叉树形状。 二叉树转换成森林:将二叉树分成n个互不相交、没有右子树的二叉树,然后将每个二叉树都转换成树。 阅读全文
posted @ 2020-02-14 20:14 eason66 阅读(618) 评论(0) 推荐(0) 编辑
摘要: 树的遍历有3种:先根遍历、中根遍历、后根遍历; 先根遍历:如果该二叉树为空树,则空操作,否则先访问根结点,再先根遍历左子树,最后先根遍历右子树。 1 //该二叉树用二叉链表存储,结点类型BiTreeNode 2 void pre_oder(BiTreeNode *root){ 3 if(root!= 阅读全文
posted @ 2020-02-14 14:02 eason66 阅读(801) 评论(0) 推荐(0) 编辑
  2020年2月7日
摘要: 1.单调队列简介: 单调队列是一种数据结构,类似如单调栈,但里面的元素必须在一个区间内,如果“过时”就要出队。所以,单调队列可以在两端进行出队,但只能再队尾入队。按此性质,传统的队列已无法满足需求,需要使用双端队列,再C++的STL里,双端队列定义在deque里: #include <deque> 阅读全文
posted @ 2020-02-07 16:57 eason66 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 1.单调栈简介 单调栈是一种数据结构,它里边存放的数据具有单调性,每个元素都只进栈一次,进栈时会把破坏栈的单调性的元素弹出。用代码表示就是: 1 stack <int> s;//单调栈,单调递增 2 int index;//要进栈的元素 3 while(!s.empty()&&s.top<index 阅读全文
posted @ 2020-02-07 14:16 eason66 阅读(577) 评论(0) 推荐(0) 编辑
摘要: 题目:看图 思路: 找规律,我们发现这个序列为10110101 10110101 10110101 …… 按照找到的规律,用循环数组就行了。 犯的错误: sum没清0。 收获: 变量累加之前要清0。 代码: 1 #include <iostream> 2 using namespace std; 3 阅读全文
posted @ 2020-02-07 11:00 eason66 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题目:点此 描述: 在某个字符串(长度不超过100)中有左括号、右括号和大小写字母;规定(与常见的算数式子一样)任何一个左括号都从内到外与在它右边且距离最近的右括号匹配。写一个程序,找到无法匹配的左括号和右括号,输出原来字符串,并在下一行标出不能匹配的括号。不能匹配的左括号用"$"标注,不能匹配的右 阅读全文
posted @ 2020-02-07 10:34 eason66 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 题目:点此。 题意描述: 任何一个正整数都可以用2的幂次方表示。例如: 137=27+23+20 同时约定方次用括号来表示,即ab可表示为a(b)。由此可知,137可表示为: 2(7)+2(3)+2(0) 进一步:7=22+2+20(21用2表示) 3=2+20 所以最后137可表示为: 2(2(2 阅读全文
posted @ 2020-02-07 10:02 eason66 阅读(269) 评论(0) 推荐(0) 编辑
  2020年2月3日
摘要: 题目:点此 优先队列思路:{ 先读入,读入的数据放入优先队列,再循环:{ 取出两个数,把这两堆果子合并,记录耗费体力并保存合并后果子的重量。 } 输出。 } 暴力思路:{ 与优先队列没什么区别,只是放入优先队列改成了用插入排序或冒泡排序确定放的位置。 } 犯的错误:{ 1.函数内要改变的值做参数时应 阅读全文
posted @ 2020-02-03 18:10 eason66 阅读(211) 评论(0) 推荐(0) 编辑