⑴ 1.簡要概括美團是怎麼做業務的2.試分析為什麼王興說線上廣告投入 10 塊錢,就可以換來別人在線
摘要
美團現在基本上都是靠流量來堆積業務的。
⑵ 要面試演算法工程師,大神給點相關經驗啊
演算法是比較復雜又基礎的學科,每個學編程的人都會學習大量的演算法。而根據統計,以下這18個問題是面試中最容易遇到的,本文給出了一些基本答案,供演算法方向工程師或對此感興趣的程序員參考。
1)請簡單解釋演算法是什麼?
演算法是一個定義良好的計算過程,它將一些值作為輸入並產生相應的輸出值。簡單來說,它是將輸入轉換為輸出的一系列計算步驟。
2)解釋什麼是快速排序演算法?
快速排序演算法能夠快速排序列表或查詢。它基於分割交換排序的原則,這種類型的演算法佔用空間較小,它將待排序列表分為三個主要部分:
·小於Pivot的元素
·樞軸元素Pivot(選定的比較值)
·大於Pivot的元素
3)解釋演算法的時間復雜度?
演算法的時間復雜度表示程序運行完成所需的總時間,它通常用大O表示法來表示。
4)請問用於時間復雜度的符號類型是什麼?
用於時間復雜度的符號類型包括:
·Big Oh:它表示小於或等於目標多項式
·Big Omega:它表示大於或等於目標多項式
·Big Theta:它表示與目標多項式相等
·Little Oh:它表示小於目標多項式
·Little Omega:它表示大於目標多項式
5)解釋二分法檢索如何工作?
在二分法檢索中,我們先確定數組的中間位置,然後將要查找的值與數組中間位置的值進行比較,若小於數組中間值,則要查找的值應位於該中間值之前,依此類推,不斷縮小查找范圍,直至得到最終結果。
6)解釋是否可以使用二分法檢索鏈表?
由於隨機訪問在鏈表中是不可接受的,所以不可能到達O(1)時間的中間元素。因此,對於鏈表來說,二分法檢索是不可以的(對順序鏈表或排序後的鏈表是可以用的)。
7)解釋什麼是堆排序?
堆排序可以看成是選擇排序的改進,它可以定義為基於比較的排序演算法。它將其輸入劃分為未排序和排序的區域,通過不斷消除最小元素並將其移動到排序區域來收縮未排序區域。
8)說明什麼是Skip list?
Skip list數據結構化的方法,它允許演算法在符號表或字典中搜索、刪除和插入元素。在Skip list中,每個元素由一個節點表示。搜索函數返回與key相關的值的內容。插入操作將指定的鍵與新值相關聯,刪除操作可刪除指定的鍵。
9)解釋插入排序演算法的空間復雜度是多少?
插入排序是一種就地排序演算法,這意味著它不需要額外的或僅需要少量的存儲空間。對於插入排序,它只需要將單個列表元素存儲在初始數據的外側,從而使空間復雜度為O(1)。
10)解釋什麼是「哈希演算法」,它們用於什麼?
「哈希演算法」是一個哈希函數,它使用任意長度的字元串,並將其減少為唯一的固定長度字元串。它用於密碼有效性、消息和數據完整性以及許多其他加密系統。
11)解釋如何查找鏈表是否有循環?
要知道鏈表是否有循環,我們將採用兩個指針的方法。如果保留兩個指針,並且在處理兩個節點之後增加一個指針,並且在處理每個節點之後,遇到指針指向同一個節點的情況,這只有在鏈表有循環時才會發生。
12)解釋加密演算法的工作原理?
加密是將明文轉換為稱為「密文」的密碼格式的過程。要轉換文本,演算法使用一系列被稱為「鍵」的位來進行計算。密鑰越大,創建密文的潛在模式數越多。大多數加密演算法使用長度約為64到128位的固定輸入塊,而有些則使用流方法。
13)列出一些常用的加密演算法?
一些常用的加密演算法是:
·3-way
·Blowfish
·CAST
·CMEA
·GOST
·DES 和Triple DES
·IDEA
·LOKI等等
14)解釋一個演算法的最佳情況和最壞情況之間有什麼區別?
·最佳情況:演算法的最佳情況解釋為演算法執行最佳的數據排列。例如,我們進行二分法檢索,如果目標值位於正在搜索的數據中心,則這就是最佳情況,最佳情況時間復雜度為0。
·最差情況:給定演算法的最差輸入參考。例如快速排序,如果選擇關鍵值的子列表的最大或最小元素,則會導致最差情況出現,這將導致時間復雜度快速退化到O(n2)。
15)解釋什麼是基數排序演算法?
基數排序又稱「桶子法」,是通過比較數字將其分配到不同的「桶里」來排序元素的。它是線性排序演算法之一。
16)解釋什麼是遞歸演算法?
遞歸演算法是一個解決復雜問題的方法,將問題分解成較小的子問題,直到分解的足夠小,可以輕松解決問題為止。通常,它涉及一個調用自身的函數。
17)提到遞歸演算法的三個定律是什麼?
所有遞歸演算法必須遵循三個規律:
·遞歸演算法必須有一個基點
·遞歸演算法必須有一個趨向基點的狀態變化過程
·遞歸演算法必須自我調用
18)解釋什麼是冒泡排序演算法?
冒泡排序演算法也稱為下沉排序。在這種類型的排序中,要排序的列表的相鄰元素之間互相比較。如果它們按順序排列錯誤,將交換值並以正確的順序排列,直到最終結果「浮」出水面。
滿意記得採納哈
⑶ 想問一下美團點評的校招筆試好過嗎
咨詢記錄 · 回答於2021-10-09
⑷ 美團前端面試難嗎
美團目前也是在大量的招人啊~~當時參加的是美團打車部門的面試(一年工作經驗以上的),部門技術棧vue,後台就是node,一面通過,等了兩個小時面試二面,然後通知我回去等消息,一般這樣就是掛掉了,毫無疑問。美團是一次性全部面完的。所以去參加最好做好面試四個小時的打算。
先來聊聊一面吧~哈哈
一面
1.簡單的自我介紹,與大體的了解我。。。
一面面試官非常不錯,先問了下幾個項目和用到的技術,會先對我懂的東西做一個大體的了解,比如webpack的單頁面的多頁面切換,webpack的按需載入,一些webpack的配置有哪些,問了有沒有看vue源碼,我說了一個vue的watch,大體問了問我框架方面的東西,發現我對框架並不是很熟練,安慰我說沒有關系。
2.promise的原理
這個面試官最讓人欣賞的就是不會去問你不了解的東西,一開問了我promise,發現我用的並不是很多,就很自然的說沒事,換一種方法問你~~~好和藹啊~
然後就讓我用原生js寫一個回調函數,其實就是問promise的原理了,js寫一個。
3.this指向
這個是面試官手寫了一道變態長以及繞的this指向題,可以自行網路js this指向面試題,看幾道沒有啥問題,需要關注的是其中也考了,argument,和apply(null)。以後想起來再寫吧
4.bind與函數柯里化
也就是寫個bind,這個紅皮書高級函數(22章)有,
可以看下。不過還是得先理解bind的用法,返回一個函數,以及可以傳遞的參數。參數這里涉及到了函數柯里化。都是手寫代碼,而且最好寫的整潔,因為我有些一筆帶過,面試官都讓我寫完整,明確說要看我寫代碼水平
5.==, isNaN, typeof
問這個之前先問了我有幾種數據類型(七種,下圖再加symbol),這里隱形的看你知不知道es6,symbol這個新出的類型。說出了symbol自然會問你這個類型有什麼用。
然後就寫了好多個typeof,isNaN,==的問輸出,這個就是基礎題
6.知道什麼http請求頭?
這個可以說的很多,說了幾個,又主動說了下有關跨域請求頭,之前項目用的cors,於是和他聊了一會,其實面試就是主動表現自己,把自己知道的都說出來,不然幾個請求頭說細不細,要問細了能把人問蒙了,最好把話題引到自己知道的地方。
7.問了css
問了css盒子並畫出來,清除浮動與bfc,兩列布局。
8.說了一大堆其實就是想考我防抖
面試完這個問我想問的問題,我直接問還有二面么?回答有的,又介紹了一會美團打車,說是後台是node,看來要求是前端也要有後台的知識嘍。
二面
二面的是我的學長,可是我被問慘了。。。。問的顯然比一面深入很多,都問了java
1.自我介紹,問項目
針對項目問了不少,當時有一個支付行為的項目,於是問了很多安全方面的問題,蒙蒙的,完全不知道。第一個就很失敗了。然後問了其他的項目,問了websocket。
2.node的EventEmitter用js實現出來
寫出來了,但是可以看出來代碼寫的不規范,學長面試官表示看起來很亂。不過大約算是可以的,指出了幾個問題,讓我進行修改。(之後完善)
3.虛擬dom
其實vue中就有jsx,react的特點之一有jsx,虛擬dom和代碼優化有點關系。
先說下正常對dom的操作,在瀏覽器中分為渲染引擎和js引擎,現在瀏覽器內核一般都是渲染引擎(生成渲染樹),因為js引擎越來越獨立了(所謂的v8引擎?)
然而你在js中獲取dom元素的時候你必須要通過渲染引擎,這樣兩個線程之間的數據交換自然會很慢。所以在前端優化中總是要考慮減少dom操作這一項。包括獲取dom元素變數儲存起來。
jsx是把dom元素變成了儲存在內存中的數據結構。js很快,操作dom也很快。不過也存在缺點,目前的理解就這么點了。
4.路由的實現原理
餓,不知道。。(待會看!)
5.node文件流,java的映射機制(記不太清楚)?
餓。。
6.數組方法map和recer區別?
餓
7.進程與線程的區別
終於有個我會的了,這個顯然想問你js的運行機制。先介紹了下進程與線程。
一個瀏覽器是一個進程,雖然js是單線程的,但是瀏覽器是多線程的,v8引擎也是多線程的,比如有渲染線程,有處理請求的線程。然後說說任務隊列,eventloop。沒有理解很深也不敢往下說。
事件循環可以看下這個,鏈接
8.樹遍歷
先序,中序,後序。我只知道這么多了,顯然想讓我寫一個的,可是不會。也顯然面試官內心已經把我pass掉了,沒多問。
9.問了個演算法
KMP??反正我不知道。
⑸ 請問面試美團的正常流程是什麼
美團面試主要是分為筆試和面試,美團是分批面的,基本是一次性面完總共三面,全都是技術面的。一面沒通過,直接說farewell了。前兩面沒壓力,面試官是和顏悅色;到第三面,能明顯感覺到差別,基本面無表情,做好心理准備。面試過程:筆試題目,演算法程序題多,最後安卓前端題,題目還是不難的,題目在lintcode上刷到過一樣的。第一面:隨時Be Nice,一個普通員工就可能是你的面試官;首先做自我介紹。面試官對我的經歷問了幾個問題,然後就是問些很基礎,進程和線程的區別;進程間同步方式,。還問到如何編程實現 a^n ,我就說用二分的思想。說到思想,美團蠻注重思想的,第二第三面過程里如果有什麼你一下子難實現的,你就講清楚你是怎麼個思路,不要消極對待就好。然後就是隨意提問,問到了Java裡面的各種語言機制,問到了計算機網路裡面的三次四次握手,UDP和TCP區別,get和post區別等等,沒有深問。問的很雜很多。
第二面:基本上是沒問操作系統和網路的題目,就出演算法題,有如何判斷一個二叉樹是另一棵二叉樹的子樹;像列印機一樣,倒過來列印一棵樹,比如一個樹是這樣的,輸出4、5、6、2、3、1,這個就用層次遍歷,存儲遍歷過的節點,在每一層的結尾存儲該層的個數……面試官檢查驗證代碼超級仔細,所以面試過程中做題目的時候還是要更加專心一點,不然被他發現錯誤. 接著,第二個問題,自己寫一個Stack類,要實現push、pop操作。
第三面:面試官基本是Boss級別的吧,各種問題啊,興趣愛好未來規劃啥,了解你這個人的性格和美團契合。三面都是技術面,最後還是要寫代碼
1)實現 char* upcase(const char* src, int len)。
2) 類似6,7,8,1,2,3,4,5 的序列中用二分查找某個數。他還會問問看過的書啊,問幾個簡單的問題,能答上來就好。基本是工作要求里提到的名著或者就是教材里學到的東西,因為三面的面試官是大佬,是希望能我們能有積極解決問題熱情。
前期准備:對美團注重演算法早有耳聞,還是很早就開始准備刷題。面試時筆試和面試里都遇到了在lintcode 做過的原題。總之,面美團演算法必要刷,難以實現就用邏輯清晰的思路來拯救面試;在技術都OK前提下,面試官看重的更多是優秀邏輯思維能力,善於從復雜系統表象中分析問題,對解決復雜問題充滿激情。不要遇到困難有消極情緒!
⑹ 明天去美團復試,會被問到什麼問題復試一般都由誰面試,需要注意什麼
好吧 作為 資深業務,你需要向上級表達你是一個能吃苦,肯努力的人,美團很多高管來自阿里,講究的也是狼性。每天的工作就是維護老客戶,談單,陌拜。所以你只要表達出你有很強的沖勁,對吃喝玩樂很熟悉,踏實就沒事了。
比較辛苦,收入不菲。上升空間很大。
⑺ 美團公開外賣預估到達時間演算法規則,這種演算法和邏輯合理嗎
其實對我們來說,美團公開外賣預估到達時間演算法規則,這些規則是按照最優的路線來計算的。但是在實際的操作過程中這種演算法確實會加大外賣員的任務。而且要所謂的演算法最優選擇,也可能考慮到大多數平均的用時。所以在實際的送單過程中確實會不斷的壓榨騎手的時間成本,所以這種演算法本身來說能夠提高到達時間,但是整體上來說會加重外賣員的負擔,所以可以從以下幾個方面出發來看待是否合理。
3,美團的外賣預估到達時間,建立在數字模型的基礎之上的,但在實際過程中,可能會存在外界因素影響所以也會存在一些時間差。
其中我們會演算法和邏輯本身也會存在一些問題,由於是建立在大數據分析的基礎之上,所以對於一些數字模型來說,也確實會存在一些線路的差異。對於普通的外賣員來說也確實需要一定的時間差,但是這種時間如果不斷的縮小的話,勢必會增加外賣員騎手的成本,所以呀,也會加重負擔。
其實對我們來說,美團公開的外賣到達時間,本身也是採取數據分析進行大資料庫對比,所以建立的數字模型採取的是最優的方案。但是在實際的過程中也會加大外賣員的實際任務量,而且採取最優的方案也代表著外賣員誤差性不斷的減小,所以也會增加外賣員的任務量。
⑻ 美團筆試考什麼計算機專業
綜合技術考試。
綜合技術考試的題型有:1、邏輯推理;2、言語理解;3、圖形推理;4、圖表題。
⑼ 美團面試問問題!
首先根據你的情況初試完了之後都會存在這一過程,面試是雙向原則,面試官一般都會看你的全方位,比如表達,思維能力,舉手投足,應變能力,穿著打扮等等雙方都會進行一個評估
其次一般的通知時間不會超過3天,兩天之後沒有答復面試成功的可能性就大大降低。按照你的情況可能公司也會有一定的面試期安排,所以你可以先等通知,順便也可以找其他工作,
最後如果你實在特別想這份工作在兩天後還沒給你反饋的情況下,謙虛的主動打電話詢問面試情況,了解面試具體評判結果,對你以後面試也是有幫助的,公司有時對於主動的人也會區別對待
祝你好運
⑽ 美團數據分析筆試考演算法嗎
考。
線程,block塊,KVO,界面傳值等還有一些基礎的OC語法的知識,可是都點悲觀,就考到了一點關於3種線程的知識。
因此說知識要全面整合,才能達到作題穩而准,平時不注重基礎,單純寫一些技術的東西,不注重基礎是不能夠的。