2018春實習 美團一面

2021-08-16 21:38:19 字數 910 閱讀 1496

比較簡單並且常規的兩道演算法題:

1.青蛙跳台階問題

乙隻青蛙一次可以跳上 1 級台階,也可以跳上2 級。求該青蛙跳上乙個n 級的台階總共有多少種跳法。

解:即斐波那契數列

方法一:遞迴

效率太低,時間複雜度為o(2^n)

int kinds(int n)

方法二:非遞迴

把之前算過的資料儲存起來,時間複雜度o(n)

int kinds(int n)

}return n1;

}2.用快速排序的方法得到陣列第k大的數

快速排序的時間複雜度為o(nlogn)

此處摘自

和我在面試時寫的基本一樣,但源**有幾個問題,我進行了修改

1)sort函式中的if語句應改為while

2)quicksort_k_max中與k比較的語句應改為與k-1比較,因為陣列中是下標大小

3)在main函式中呼叫quicksort_k_max函式時傳遞的最後乙個引數應該就是k,而不是len-k

以下為修改後**,已驗證

#include

#define length(array) sizeof(array)/sizeof(array[0])

#define true 1

#define false 0

int sort(int *a, int low, int high)

}int main()

;int k =8;

int len = length(a);

printf("%d",quicksort_k_max(a,0,len-1,k));

return 0;

}

美團一面二面

美團一面 1.介紹專案 2.說出自己優秀的地方 3.手撕 找出回文數 4.瀏覽器輸入乙個url 5.反問 美團外賣二面 49分鐘 1.介紹 2.專案介紹 3.白盒測試有哪些方法 4.黑盒測試有哪些方法。5.乙個軟體從開發到上線有什麼流程 6.現在有一段 搜尋一些檔案,在檔案找到關鍵字,最後函式返回關...

美團前端一面

你所知道的dom元素操作方法 獲取元素或者操作元素 盡可能多 你所知道的dom事件 冒泡捕獲 跨瀏覽器的事件模型 事件 position屬性介紹 display屬性介紹 bfc,實現方式 清除浮動 js繼承機制 陣列去重 二叉樹前序遍歷思路 vue宣告週期 vue mixin 和 2面問題 程式設計...

美團一面掛

美團一面面試題 1.寫出快速排序演算法 2.給定陣列和乙個固定的數值sum,輸出2個和為固定數值的數值對 就是說和為sum,每組數值對中包含的元素有2個 3.給定陣列和乙個固定的數值sum,輸出3個和為固定數值的數值對 就是說和為sum,每組數值對中包含的元素有3個 美團每次面試是1個小時,考演算法...