
算法
喜欢的游泳的鱼~
这个作者很懒,什么都没留下…
展开
-
线索二叉树的基本功能实现你想要的基本都有
1,什么是线索二叉树?用自己的话说就是:原来我们求一棵二叉树的前序、中序、后序序列的时候,都必须用到递归遍历相应的二叉树,否则也得借助栈等结构来记录。这样的话,如果我们想很快的找到某一个节点在某种序列下的前驱或后继,每次都要遍历,这显然十分浪费时间。很自然,要是想避免这个重复工作,那么我们就需要把所有节点的前驱和后继记录下来,这样每次查找相应的记录就行了。于是就引出了——‘线索’一词。没错,真的是‘线索’,由线索找到相应节点的前驱和后继,很形象!2、不管我用文字讲的多牛逼,还是不好懂的,因此,我决定推荐原创 2021-10-09 11:02:18 · 179 阅读 · 0 评论 -
树的基本功能的实现
1、树的基本功能的实现(包括桉树状打印二叉树)关于树的创建可以看看我的另外一篇,可别小看了树的创建,你要是真的把树的创建真真切切的弄懂啦,那么树后面就好学了很多,否则,很痛苦的;附链接:https://blog.youkuaiyun.com/qq_50504109/article/details/119721763/** * 时隔一百年总算学到树啦 * 不容易 * * 测试用例:AB..CD... 或者 AB.DF..G..C.E.H.. */#include<stdio.h>#i原创 2021-10-01 10:59:09 · 459 阅读 · 0 评论 -
用递归求n的阶层
1、用递归求n的阶层/** * 对递归了解的话,这个题就很简单啦,要是不懂递归的小伙伴可以先看看递归的资料哈 */#include<stdio.h>int main(){ int f(int n ); int n ; printf("请输入要求的n的阶数:"); scanf("%d",&n); printf("%d阶的结果:%d",n,f(n));}int f(int n ){ if ( n == 0){原创 2021-09-24 10:31:08 · 4707 阅读 · 0 评论 -
经典题汉诺塔
1、汉诺塔个人建议在学递归之前先去看看方法的弹栈和压栈,了解完这个然后自己手动画画图,会对自己理解递归有很大的帮助,下面是我学二叉树的时候自己画的图;#include<stdio.h>/** * * 汉诺塔基本思路就是先把第一个柱子上面1到n-1个圆柱借助第三个柱子放到第二个柱子上面 * 然后在将第n个柱子放到第三个圆柱上面, * 然后我们在把第二个柱子上面的圆柱放到第三个圆柱上面,就完成了汉诺塔的游戏(当然这是理想状态下); * 因为第二个柱子上面的圆原创 2021-09-24 10:13:38 · 132 阅读 · 0 评论