前端面試題(四方偉業)

記錄一下今天的面試,公司是成都四方偉業,問的大部分都是計算機基礎知識(數據庫、數據結構等),由於沒有好好系統的複習這方面的知識,最後的結果是涼涼,但是還是收穫很多,給自己提個了醒,不能丟了最基礎的東西呀!!!。

下面就看看問了哪些問題,涉及到哪些知識點吧,有的問題我會附上參考答案(僅供參考~),有的問題的答案之後再補上,有不對的地方歡迎大家指出~

1、用SQL Server 、MySQL查找表A的前十行

     答案:SQL Server:select  top 10 from A

                MySQL:select * from A limit 10

2、數據結構有哪些類型?棧與隊列的區別,他們的特點分別是什麼?單向鏈表、雙向鏈表是什麼?他們的區別及優缺點?

答案:數據結構類型:數組、鏈表、棧、隊列、樹、圖、集合等

          1)棧:只允許在一端插入或刪除操作的線性表;

                       特性是後進先出

                       常見應用有:括號的匹配、表達式求值、遞歸;

          2)隊列:只允許在表的一端進行插入操作,在表的另一端進行刪除操作;

                          特性是先進先出

                          常見應用:樹的層次遍歷;

          3)單向鏈表:線性表的鏈式存儲(因爲順序表不方便進行插入與刪除操作,並且需要一塊連續的地址空間,由此引入了線性表的鏈式存儲),爲了建立起每個節點之間的聯繫,每個節點除了存放自己的數據域之外,還存儲一個指向其後的一個指針(指向下一個節點的地址);

                                 優點:與順序表相比,在一個節點之後刪除或插入一個節點只需要進行指針指向的修改,而不需要移動大量                                              的元素;

                                 缺點:對某個節點的前驅節點進行操作(刪除、插入操作時),只能從頭開始遍歷,訪問後繼節點的時間復                                              雜度爲O(1),而訪問前驅節點的時間複雜度爲O(n);

         4)雙向鏈表:每個節點除了自己的數據域之外,還有一個指向後繼節點的指針和一個指向前驅節點的指針;

3、JS實現面向對象的方式有哪些?

     一開始對這個問題沒有get到面試官想要的答案,對這個題目我的理解是面向對象編程在JS中的實現,因爲在其他面嚮對象語言(像c++/Java)都是基於類實現,而JavaScript(ES5及以前)是沒有class的,是通過原型實現;

4、JS在項目使用中有使用過哪些數據結構?

答案:數組、隊列、棧、鏈表、集合、圖、二叉查找樹

5、JS的設計模式

6、在實習的過程中遇到過哪些比較棘手的問題?怎麼解決的?有沒有其他的解決方法?

7、看過哪些源碼?

8、平常是怎麼學習前端的

大致就是以上這些問題

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章