- 博客(4)
- 收藏
- 关注
原创 交换左右子节点的代码复制粘贴到后序遍历的位置也是可以的,但是直接放到中序遍历的位置是不行的,为什么?
只要保持这个相对顺序模式不变,即使二叉树的结构发生了左右子节点交换的变化,仍然可以按照先处理根,再按相对位置处理 “左” 和 “右” 的方式来进行遍历,只是此时的 “左” 和 “右” 在原结构上的位置互换了,但从遍历的逻辑顺序角度,依然遵循着先根再 “左” 再 “右” 的规律。所以根节点与左右子节点之间的先后顺序对于不同的遍历方式的正确性起着至关重要的作用,而相对来说左右子节点之间本身的先后顺序在遍历规则的大框架下具有一定的灵活性(比如在前序和后序遍历中交换后仍可正常遍历)。
2024-09-05 08:55:48 208
原创 C语言进阶
这里输出结果是>因为strlen的返回类型是size_t也就是无符号整形,所以两个无符号整型相减也应该是无符号整形>0。//初始化数组为0,这时候如果拷贝进去数组内会加一个\0正确初始化的两种方法//目标空间不够大,放不下arr//源字符串必须以\0结束//字符串是常量,不是数组,不可更改//会把\0也拷进去//直接输入想输出的值就可以了return 0;strcat不要用于自我追加,\0会被覆盖从而造成死循环return 0;
2024-06-16 15:06:06 1060
原创 数据结构(郝斌版知识点)
为已有的数据类型起个名字。使定义变量更加简便若在haha前面加上一个*两个变量时双链表:就是有两个指针域,但是前面的指针域只能指向前面,后面的指针域只能指向后面。循环链表:最后一个结点的指针域可以指向第一个结点。静态队列通常都必须是循环队列父节点和子节点)非常快在此讨论什么是泛型这里面同一种逻辑结构指的是都是树,或都是图这种。物理存储不同指的是使用数组或链表存储两种不同。
2024-06-16 15:05:06 762
原创 \0在字符串中的作用
s代表的是打印字符串,但字符串的打印只有遇见\0才会停止,所以,arr2中f后没有\0,系统会根据他所在的储存位置往后打印,直至遇见\0打印终止。先看一个例子:我们定义了两个数组,一个是由子符串构成的数组,一个是由多个字符构成的数组,他们中数组的内容没有任何的差别,都是abcdef,(这里的22只是一个随机的数字,是内存条在从arr2的第一字符开始,刚好到内存条的第23个时遇见了\0)strlen()的作用是输出字符串的长度,strlen()会输出在\0之前的字符的个数,沿用上面的例子。
2023-09-14 18:43:02 1907 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人