int** ret; int retSize; int* retColSize; int* path; int pathSize; void dfs(struct TreeNode* root, int targetSum) { if (root == NULL) { return; } path[pathSize++] = root->val; targetSum -= root->val; if (root->left == NULL && root->right == NULL && targetSum == 0) { int* tmp = malloc(sizeof(int) * pathSize); memcpy(tmp, path, sizeof(int) * pathSize); ret[retSize] = tmp; retColSize[retSize++] = pathSize; } dfs(root->left, targetSum); dfs(root->right, targetSum); pathSize--; } int** pathSum(struct TreeNode* root, int targetSum, int* returnSize, int** returnColumnSizes) { ret = malloc(sizeof(int*) * 2001); retColSize = malloc(sizeof(int) * 2001); path = malloc(sizeof(int) * 2001); retSize = pathSize = 0; dfs(root, targetSum); *returnColumnSizes = retColSize; *returnSize = retSize; return ret; }根据以上代码对代码进行挖空出4道选择题
时间: 2024-03-31 20:35:48 浏览: 14
1. 上述代码是实现了什么功能?
A. 给定一棵二叉树和一个目标和,找出所有从根节点到叶子节点路径总和等于目标和的路径。
B. 给定一棵二叉树和一个目标和,找出任意一条从根节点到叶子节点路径总和等于目标和的路径。
C. 给定一棵二叉树和一个目标和,找出所有从根节点到叶子节点路径总和大于等于目标和的路径。
D. 给定一棵二叉树和一个目标和,找出所有从根节点到叶子节点路径总和小于等于目标和的路径。
答案:A
2. 在上述代码中,为什么要使用回溯算法?
A. 因为需要遍历所有可能的路径。
B. 因为需要计算每个节点到根节点的路径和。
C. 因为需要将所有符合条件的路径保存下来。
D. 因为需要对每个节点进行标记以避免重复计算。
答案:A
3. 上述代码中,为什么要使用指针数组 ret 来保存路径?
A. 因为指针数组可以动态增长,可以保存任意数量的路径。
B. 因为指针数组可以快速访问每个路径的起始地址。
C. 因为指针数组可以将所有路径保存在一起,方便后续处理。
D. 因为指针数组可以避免内存泄漏,可以及时释放占用的内存。
答案:A
4. 上述代码中,为什么要使用 memcpy 函数将路径保存在临时数组中?
A. 因为临时数组保存的是当前符合条件的路径,需要将其保存在指针数组中以避免被覆盖。
B. 因为临时数组保存的是当前符合条件的路径,需要将其保存在指针数组中以便后续处理。
C. 因为临时数组保存的是当前符合条件的路径,需要将其保存在指针数组中以便进行排序等操作。
D. 因为临时数组保存的是当前符合条件的路径,需要将其保存在指针数组中以便进行去重操作。
答案:A
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)