寫sql語句,優化方法?
程序與執行緒的區別
對資料庫熟悉嗎?資料庫的儲存引擎的區別? 感覺區別說少了,他還想聽其他的
瀏覽器輸入url的過程
三次握手的過程,為什麼需要三次?
說一說linux常用命令
前端用過什麼框架?
最後問我最後的職業規劃?你想做工程還是演算法?
問了一下技術棧。
演算法題:中序遍歷的遞迴和非遞迴的版本
鍊錶的反轉,自己再也測試測一下
基礎:c++:
記憶體分配的方式?
棧和堆的區別
虛函式及其作用?哪些函式不能當虛函式
熟悉什麼設計模型,寫**
資料庫:索引,以及區別
作業系統:程序間通訊機制,cpu排程演算法
計算機網路:cookies和session的區別? 一次允許傳送多次session嗎?
演算法一:
//乙個有n個整數的一維陣列(a[0],a[1],a[2],……,a[n-1]),這個陣列中有很多子陣列,求子陣列之和的最大值是什麼?
//1)連續的子陣列;
//2)只需得到最大值即可;
//3)整數,可能包含正整數、負整數、零。
//例子:[1,-2,3,5,-3,2]
def
maxsum
(a, n)
: count =
0 res =
float
('-inf'
)for i in
range
(n):
count += a[i]
res =
max(res, count, a[i])//
if count <0:
// count =
0return res
或者:
tmp =
max(count+a[i]
, a[i]
) res =
max(tnp, res)
演算法二:
//給你乙個包含 n 個整數的陣列 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a + b + c = 0 ?請你找出所有滿足條件且不重複的三元組。
//注意:答案中不可以包含重複的三元組。
//示例:
//給定陣列 nums = [-1, 0, 1, 2, -1, -4],
//滿足要求的三元組集合為:
//[// [-1, 0, 1],
// [-1, -1, 2]
//]
class
solution
:def
helper
(nums):if
len(nums)
<3:
return
res =
n =len(nums)
nums.sort(
)for i in
range
(n):
for j in
range
(i+1
, n)
: c = nums[i]
a = nums[j]
b =-a - c
lastb = self.binary_search(nums[i+2:
], b)
if b !=-1
:
[a,b,c]
)def
binary_search
(self, nums, target)
: low, high =0,
len(nums-1)
while low < high:
mid =
(low+high)//2
if nums[mid]
> target:
high = mid -
1else
: low = mid
return nums[low]
if nums[low]
== target else
-1
面試 百度搜尋架構部面試記錄
宣告和定義的區別?宣告是將乙個名稱引入程式。定義提供了乙個實體在程式中的唯一描述,涉及到記憶體空間的分配以及初始值的設定。宣告和定義有時是同時存在的。常見的賦值語句為定義即宣告。幾種只宣告不定義的情況 void display 提供函式宣告 extern int a class a typedef ...
面經 百度商業搜尋部實習面試經歷
隨便說了點 2.所做的專案 說了三句,後面沒再說了,面試官也沒問了,估計專案太水 3.作業系統 熟悉linux麼?知道基本的命令 top命令幹啥的?顯示正在執行的程序,還說了gc a n x top後輸入u可以檢視當 前使用者程序。怎麼殺死乙個程序?kill pid 就行。程序kill殺不死呢?轉到...
面試 百度 搜尋架構部 測試開發崗
一面 1 自我介紹 2 技能提問 3 二面 1 自我介紹 2 sql 學生成績表,包含名字,學號,科目,成績,乙個人有可能多個科目的成績,寫sql,求表中成績總和前三的列表,按照次序輸出 3 宴會人數 100,具體不確定,宴會隨機 中獎人數約為10人,也不確定,寫 實現該功能 4 斐波那契數列 5 ...