阿里2020年提前批開發崗第一輪面試

全程採用電話面試,面試共分爲兩大部分,第一部分爲問答面試;第二部分進行筆試。

一、問答面試

先進行自我介紹。

1、c++基礎:

①堆與棧的區別,舉例。

②多態是怎麼實現的,作用是什麼。

③智能指針瞭解嗎?

④棧溢出是否經歷過?

2、數據結構

①B樹如何實現的

3、數據庫

4、項目經歷

找一個你最熟悉的項目進行描述。

①代碼量有多大(行數),自己負責的代碼量。

②內存泄漏問題怎麼解決的

③項目中最具挑戰性的問題

 

二、上機

用自己熟悉的排序算法即可

#include <stdlib.h>
#include <stdio.h>

typedef struct {
  int id;
  int cnt;
} data_t;


data_t input1[42] = {
  {1,5}, {2,2}, {3,4}, {4,10}, {5,4}, {6,7}, {7,6}, {8,3}, {9,9}, {10,5},
  {11,3}, {12,16}, {13,9}, {14,17}, {15,4}, {16,7}, {17,19}, {18,16}, {19,10}, {20,12},
  {21,2}, {22,6}, {23,17}, {24,2}, {25,10}, {26,8}, {27,2}, {28,16}, {29,20}, {30,19},
  {31,15}, {32,12}, {33,8}, {34,16}, {35,12}, {36,11}, {37,11}, {38,15}, {39,7}, {40,4},
  {41,8}, {42,4}
};

int input2[100] = {
  32, 26, 20, 28, 4, 20, 34, 2, 21, 25, 40, 42, 34, 20, 3, 13, 40, 29, 23, 14,
  32, 16, 23, 23, 7, 14, 30, 37, 36, 6, 21, 12, 31, 9, 25, 41, 12, 35, 40, 41,
  30, 41, 37, 30, 36, 42, 2, 37, 35, 21, 2, 11, 36, 36, 40, 18, 31, 21, 35, 12,
  32, 11, 4, 31, 22, 41, 24, 3, 31, 32, 9, 40, 31, 32, 8, 36, 38, 16, 26, 26,
  17, 20, 9, 29, 8, 24, 14, 4, 37, 26, 19, 13, 25, 38, 19, 2, 33, 12, 27, 3
};

/* 
  Task:
  1. sort input1 array according to data_t.cnt value
  2. use a list to store sorted input array, and use input2 to adjust list in a LRU way
*/

int main(int argc, char **argv)
{
  return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章