2020-3-15
題目一:
問答
請寫出如下代碼運行后產生的結果,并給出解釋,說明結果是如何得出的。
答案:b,f,c,a,d
解析:
在同一個作用域內,同步的宏任務先執行(普通代碼), 然后是微任務(promise.then或promise.catch等), 再接著是異步的宏任務(計時器等)。
事件棧:
同步宏任務,微任務(兩者按順序排在前面),異步宏任務(因為是異步,是排在后面的,即使延遲0秒也是)
題目二:
編程
形如1, 1, 2, 3, 5, 8, 13, 21, 34, 55的數列,后一位是前面兩位相加(斐波那契數列),寫出函數要求找到第 N 位是多少,如:fib(3) => 3 , fib(5) => 8, 要求時間復雜度為O(n)。
輸入樣例1:3
輸出樣例1:2
輸入樣例2:5
輸出樣例2:5
答案
#include<iostream> #include<math.h> using namespace std; fib(int n){int a=1,b=1,c=0;for(int i=0;i<n-2;i++){c=a+b;a=b;b=c;}return c;} int main(){int m;cin>>m;if(m==1||m==2)cout<<'1'<<endl;elsecout<<fib(m)<<endl;return 0; }總結
- 上一篇: VMware HA与VMotion的部署
- 下一篇: 用VSTS进行网站压力测试