戏精萌少
戏精萌少
全部文章
题解
小知识点随记(5)
归档
标签
去牛客网
登录
/
注册
戏精萌少的博客
全部文章
/ 题解
(共6篇)
题解 | #构建乘积数组#
来自专栏
C++思路:感觉理解题意之后就很简单,数组B中B[i]的值其实就是数组A中除了A[i]之外所有数据的乘积。如果可以用除法的话,计算A中所有数据的乘积,然后使用一个for循环除去A[i]的值即可。现在题目要求不使用除法,那么我就想到以i为结点,采用2个for循环分别计算A[0]至A[i-1]的乘积和A...
2021-06-28
0
477
题解 | #跳台阶扩展问题#
来自专栏
C++思路:可以想到用递归的思路。n阶台阶可以一次跳1、2、3、...、(n-1)、n阶,假设跳n阶台阶有F(n)种跳法,那么F(n)=1+F(n-1)+F(n-2)+...+F(3)+F(2)+F(1),其中1表示一次跳n阶只有一种跳法。根据这个公式写递归函数可以得到如下代码: class Sol...
2021-06-27
0
385
题解 | #不用加减乘除做加法#
来自专栏
C++思路:不使用加减乘除,那么考虑到C中的运算符,除了算术运算外,还有 关系运算符: ==,!=,>,<,>=,<= 逻辑运算符: 与&&、或||、非! 位运算符: 按位与&、按位或!,按位异或^,取反~,左移一位右边补零<<,右移一位左...
2021-06-22
0
384
题解 | #二叉树的深度#
来自专栏
C++思路:首先需要明确二叉树的深度是怎么求的。二叉树的深度定义为:树中结点所在的层次中最大的层数。考虑递归的思想,二叉树的深度就等于左右子树中层数(深度)最大的值+1。解释如下图将树看作根节点与其左右子树,再在子树中重新划分根节点和左右子树然后认为空子树的层数为0,向上推层数 代码实现如下: /...
2021-06-21
1
381
题解 | #数组中重复的数字#
来自专栏
C语言思路:对数组进行从小到大的排序,然后遍历数组寻找重复的数字缺陷:只能找到重复数字中最小的那个数字,但是不能确定重复次数代码如下: ```/** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 @param numbers int整型一维数组 @param nu...
2021-06-21
0
511
题解 | #二叉树的镜像#
来自专栏
C语言思路:从创建二叉树的方法入手,创建二叉树的时候使用递归调用的方法给根结点、左子树、右子树分别赋值。题目要求镜像,实际上就是将每一层的左右子树互换,因此考虑在赋值的时候将赋值过程进行交换。重新定义一个函数exchange,用于交换指针指向,在创建二叉树的过程中进行左右子树的互换。代码如下: /*...
2021-06-20
0
400