資料結構與演算法
找到單鏈表的三等分點,如果單鏈表是有環的呢 ?
用快慢指標,乙個走一步,乙個走三步。如果有環,先判斷環在哪,找最後乙個節點,然後用之前的無環的做法
從10萬個數中找最小的10個,時間複雜度分析(最小堆,考慮記憶體)?
我們首先取10萬個元素中的前10個元素來建立由10個元素組成的最小堆。這樣堆頂元素便是當前已知元素的第10大的數;然後依次讀取剩下的99990個元素,若讀取的元素比堆頂元素大,則將堆頂元素和當前元素替換,並自堆頂至下調整堆;這樣讀取完所有元素後,堆中的10個元素即為這10萬個數最大的10個數,同時堆頂元素為這10萬個元素第10大元素
滿二叉樹第i層有多少個節點?
2的(n-1)次方
乙個有序的整數陣列,輸出兩個數,使它們的和為某個給定的值。如果陣列無序怎麼辦,先排序?
每個數跟後面的所有數進行相加比對,遇到相加等於target的新增到list中直接返回即可
兩個檔案,每個檔案中都有若干個url,找出兩個檔案中相同的url(用hashmap/tire樹)海量資料處理?
樹的先序中序後序以及應用場景?
陣列和鍊錶的使用場景
list中存放可重複字串,如何刪除某個字串?
1.迴圈時倒序(int i = size-1;i>=0;i—)
2.foreash時可以使用copyandwritelist保證遍歷時不報錯(遍歷的是舊陣列,修改陣列會重新新建乙個新陣列,把操作後的值賦值到新陣列,寫時加鎖,讀時不加鎖)
3.使用迭代器的remove()方法刪除元素(itertor的remove方法會保證陣列的長度始終相等於遍歷的長度)存疑!
hashmap底層實現,怎麼實現hashmap執行緒安全
arraylist linkedlist 集合類的執行緒安全問題 底層資料結構
php 資料結構常見面試題目
1,二叉樹深度優先遍歷和廣度優先遍歷 深度優先遍歷 對每乙個可能的分支路徑深入到不能再深入為止,而且每個節點只能訪問一次。要特別注意的是,二叉樹的深度優先遍歷比較特殊,克細分為 前序遍歷,中序遍歷,後序遍歷 小竅門 看根節點再前中後?前序遍歷 根節點 左節點 右子樹 中序遍歷 左子樹 根節點 右子樹...
常見面試題
1.get和post的區別 1 本質區別 get是向伺服器請求資料,post是向伺服器傳送資料。2 伺服器獲取值的方式 get方式提交的資料,伺服器端使用request.querystring獲取變數的值。post方式提交的資料,伺服器端使用request.form獲取資料。3 安全性 get安全效...
常見面試題
1 一行 實現1 100之和 lst i for i in range 1,101 print sum lst 2 如何在乙個函式內部修改全域性變數?在函式內部新增 global 變數名 這樣就可以在本地作用域定義全域性作用域了 name 大明 def eat name1 global name n...