- 0
- 0
- 约1.26万字
- 约 14页
- 2026-10-30 发布于江苏
- 举报
vivo算法实习笔试题
考试时间:______分钟总分:______分姓名:______
第一题设有如下递归函数定义:
```cpp
intfunc(intn){
if(n=1)
return1;
else
returnfunc(n-1)+func(n-2)+func(n-3);
}
```
请分析该函数计算`func(10)`的递归过程中,函数调用的总次数(包括`func(10)`本身的一次调用)。
第二题请简述快速排序(QuickSort)算法的基本思想,并说明其平均时间复杂度和最坏情况时间复杂度。
第三题给定一个包含重复元素的整数数组`nums`和一个整数`target`,请设计一个算法,找出数组中和为目标值`target`的两个数,要求返回这两个数的索引。假设每个输入都只会对应一个答案,且不可以重复利用同一个元素。请描述你的算法思路,并给出关键步骤的伪代码或核心代码片段。
第四题请解释什么是“算法的时间复杂度”,并举例说明如何在分析算法时区分`O(1)`、`O(logn)`、`O(n)`和`O(nlogn)`这几种复杂度。
第五题对于一个大小为`n`的无序数组,请分别描述冒泡排序(BubbleSort)和选择排序(Select
原创力文档

文档评论(0)