2.棧2.2使用棧計算字尾表示式
2.3對棧的元素進行排序
2.4判斷表示式是否括號平衡
3.佇列
4.鍊錶
5.樹6.圖
7.字典樹(這是一種高效的樹形結構,但值得單獨說明)
8.雜湊表(雜湊表)
1.1 尋找陣列中第二小的元素
思路:公升序排序之後,輸出第二個數字
1.2 找到陣列中第乙個不重複出現的整數
1.3合併兩個有序陣列
def merge_sort(a, b):
ret =
i = j = 0
while len(a) >= i + 1 and len(b) >= j + 1:
if a[i] <= b[j]:
i += 1
else:
j += 1
if len(a) > i:
ret += a[i:]
if len(b) > j:
ret += b[j:]
return ret
if __name__ == '__main__':
a = [1,3,4,6,7,78,97,190]
b = [2,5,6,8,10,12,14,16,18]
print(merge_sort(a, b))
1.4 重新排列陣列中的正值和負值2.1 字首表示式,中綴表示式,字尾表示式
2.1.1 中綴表示式轉化為字尾表示式
中綴表示式轉字尾表示式的規則:
2.1.2 中綴表示式轉化為字首表示式
2.2使用棧計算字尾表示式
2.3對棧的元素進行排序
2.4判斷表示式是否括號平衡3.1 使用佇列表示棧
3.2 對佇列的前k個元素倒序
3.3 使用佇列生成從1到n的二進位制數4.1 反轉鍊錶
4.2檢測鍊錶中的迴圈
4.3返回鍊錶倒數第n個節點
4.4刪除鍊錶中的重複項5.1 求二叉樹的高度
5.2 在二叉搜尋樹中查詢第k個最大值
5.3 查詢與根節點距離k的節點
5.4 在二叉樹中查詢給定節點的祖先節點6.1 實現廣度和深度優先搜尋
6.2檢查圖是否為樹
6.3計算圖的邊數
6.4找到兩個頂點之間的最短路徑7.1 計算字典樹中的總單詞數
7.2 列印儲存在字典樹中的所有單詞
7.3 使用字典樹對陣列的元素進行排序
7.4 使用字典樹從字典中形成單詞
7.5 構建t9字典(字典樹+ dfs )8.1 在陣列中查詢對稱鍵值對
8.2 追蹤遍歷的完整路徑
8.3 查詢陣列是否是另乙個陣列的子集
8.4 檢查給定的陣列是否不相交
參考:(1) - (應對程式設計師面試,你必須知道的八大資料結構)
資料結構 面試題
python實現 寫個大概,import re def quick sort alist,first,last if first last return mid value alist first low first high last while low high while low mid va...
mysql資料結構面試題 MySQL 面試題
mysql 的一些面試題,有的是平時聊到的,有的是聽別人說的,有的是工作中遇到的,特此彙總一下,有問有答。一條 sql 查詢語句執行流程?1 聯結器。客戶端和伺服器 tcp 握手後,驗證使用者名稱密碼。使用者名稱密碼通過後,聯結器會到許可權表中查詢你擁有的許可權。之後這個連線裡面的許可權判斷邏輯,都...
微軟資料結構面試題
1 反轉乙個鍊錶。迴圈演算法。1 list reverse list l 13 return tmp 14 2 反轉乙個鍊錶。遞迴演算法。1 list resverse list l 8 return n 9 3 廣度優先遍歷二叉樹。1 void bst tree t 11 1class node ...