- 博客(106)
- 收藏
- 关注
原创 <Linux>权限管理|权限分类|权限设置|权限掩码|粘滞位
权限可以用字符表示:rwxrwxrwx;可以用进制表示:777root用户或者文件目录的拥有者可以通过chmod改变权限root用户可以通过chown改变文件的拥有者,chgrp改变文件的所属组实际权限=最初权限&(~权限掩码)r权限表示是否可以读取文件内容w权限表示是否可以对文件的内容进行修改x权限表示是否可以执行该文件一般创建的文件都不具有可执行性,因此文件最初的权限是666r权限表示是否可以查看当前目录下所有的文件或子目录。
2023-11-19 09:41:32
307
原创 <C++>类和对象下|初始化列表|explicit static|友元|内部类|匿名对象|构造函数的优化
在类的构造函数体中,对成员属性写的操作叫做赋值,那么成员的初始化是在哪里进行呢?那我们定义对象时,成员属性是在那里定义的呢?成员属性在中定义。初始化列表:以一个冒号开始,接着是一个以逗号分隔的数据成员列表,每个成员变量后面跟一个放在括号中的初始值或表达式上述是我们显示写的初始化列表,若没有显示写,初始化列表会将内置类型变量设为初始值显示写初始化列表:注意:每个成员变量只能初始化一次,只能在初始化列表中出现一次类中若包含以下成员,必须放在初始化列表中进行初始化引用成员变量const成员变量无默认构造函
2023-11-18 23:19:58
161
原创 LeetCode110. 平衡二叉树
①终止条件:当左右子树高度差超过1时返回false;递归到空节点和叶子节点时,由于空节点和叶子节点都满足平衡二叉树的条件,所以直接返回true。只有每个节点的左右子树高度差不超过1才是平衡二叉树,因此可以递归解决。②转换为子问题:判断它的左、右子树是否都为平衡二叉树。
2023-06-04 12:55:43
91
原创 LeetCode226. 翻转二叉树
②转换为子问题:翻转二叉树等于翻转左子树和右子树,并且将左子树根的值和右子树根的值交换。①终止条件:递归到空节点直接返回。
2023-06-04 12:44:49
106
原创 KY11 二叉树构建
如果遇见字母,该字母始终都是当前树的根。如果遇见'#',则表示当前树的子树为空,所以将所给字符串前序转换为二叉树可以通过递归求解。②递归的终止条件----遍历字符串时遇见'#',说明当前节点为NULL,直接返回。先构建当前树根,再构建左子树,最后构建右子树。根据题目所给输入,我们可以构建出二叉树。
2023-06-01 16:42:02
94
原创 LeetCode572. 另一棵树的子树
①递归的大问题化小----判断c是否为a子树可以转换为判断c是否为a左子树的子树或者c是否为a右子树的子树。②递归的结束条件-----如果两颗树相同,返回true;两棵树为空,返回true;子树不为空但是另一棵树为空。关于如何判断两棵树相同,可以看这篇文章👇。leetcode572. 另一棵树的子树。
2023-06-01 16:07:29
92
原创 LeetCode144. 二叉树的前序遍历
的结果存起来,我选择使用数组存起来。可以类比前序遍历的操作,只不过将打印该节点这步替换成保存该节点到数组中。❗注意:这里前序遍历时传的是i的地址而不是值是为了让每层递归都可以修改已经遍历的节点个数。
2023-06-01 15:46:45
55
原创 LeetCode101. 对称二叉树
②递归存在终止条件----若左树的根节点和右数的根节点值不相等则返回false;左子树为空右子树不为空或者右子树为空左子树不为空返回false;①大问题能够转换为小问题---判断a、b子树是否对称可以判断a子树的左子树是否和b的右子树对称,a的右子树是否和b的左子树对称。判断一颗二叉树是否对称,只需要判断它的左右子树是否轴对称,但是这道题给的接口函数的参数只有一个,所以。我们需要创建一个具有两个参数的函数接收左右子树。🔨可以通过递归判断左右子树是否轴对称。,该函数用来判断左右子树是否轴对称。
2023-06-01 15:21:34
62
原创 LeetCode100. 相同的树
②递归需要有的终止条件----本题的终止递归条件就是当两棵树当前根节点的值不一样时返回false;当一棵树是空树另一棵树不是空树时返回false;当两棵树都是空树时,返回true。①每次转换为规模更小的问题求解-----本题判断当前两颗树是否相同可以转换为判断两个数的左子树和右子树是否都相同。二叉树的问题可以考虑递归求解。递归问题的两个必要条件。
2023-06-01 14:54:41
206
原创 LeetCode965. 单值二叉树
对于这题来说,🔨子问题为左右子树是否为单值二叉树。递归结束条件有三个,一是当前树为空满足单值二叉树。二是当前树只有一个节点满足单值二叉树。三是当前树根和左右子树树根不相等不满足单值二叉树。二叉树所有节点的值是一样的则为单值二叉树。我们可以将二叉树遍历一遍,但是二叉树的层序遍历比较麻烦 ,所以这里将它转换为递归求解。📚递归的主要思路是将大问题转换为更小的问题,直到这个更小的问题我们可以解决。②每次转化小问题时可以满足递归的终止条件。①每次都将大问题转换为规模更小的问题。所以递归的两个条件是。
2023-06-01 14:45:55
41
原创 LeetCode662.设计循环队列||4种方法实现
❗注意:此时不能继续插入元素了,如果在插入元素,back接下来就和front一样,而这是我们之前定义队列为空的条件。也就是说:在前提条件front==back表示队列为空时,循环链表有5个节点,只能存储4个数据,推而广之,如果想要队列中存放k个数据,那么循环链表需要定义(k+1)个节点。❓ 请思考:普通的队列我们可以通过链表来实现,那么环状的队列能否继续通过链表实现呢?构造出一个循环链表,定义front指向队列头,定义back指向队列尾后一个空间。🔍普通队列长度没有限制,循环队列的长度是初始化时被规定的。
2023-05-20 11:20:45
1093
1
原创 <数据结构>NO5.栈和队列
常见的线性数据结构除了顺序表和链表之外还有栈和队列~本篇文章详细介绍栈和队列的各种操作--入队、出队、入栈、出栈……
2023-05-18 22:37:17
426
原创 <数据结构>顺序表和链表的比较|缓存命中率
清楚了顺序表和链表如何实现后,您是否清楚它们的区别以及适用的场景?你是否清楚它们的缓存命中率为什么不同?
2023-05-18 19:28:17
349
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人