4-40. 如果給你1,000,000個整數來排序,你會選擇什么算法?消耗的時間和空間呢? 解析: 我個人傾向於用隨機化的快速排序。 首先是它在平均意義上來看比同樣O(nlogn)的歸並排序和堆排序快(見4-41)。 另外,和堆排序相比,快速排序的元素掃描是線性 ...
第五章面試題解答 . DFS和BFS使用了哪些數據結構 解析: 其實剛讀完這一章,我一開始想到的是用鄰接表來表示圖,但其實用鄰接矩陣也能實現啊 后來才發現應該回答,BFS用隊列實現 DFS可以用棧實現也可以改寫成遞歸形式。用棧來消除遞歸改寫DFS也出現在 算法導論 的練習題 . 。 . 寫一個函數,在遍歷二叉查找數的時候,輸出第i個結點。 解析: 模仿DFS遍歷時維護一個進入時間數組和完成時間數組 ...
2013-08-28 12:34 2 2436 推薦指數:
4-40. 如果給你1,000,000個整數來排序,你會選擇什么算法?消耗的時間和空間呢? 解析: 我個人傾向於用隨機化的快速排序。 首先是它在平均意義上來看比同樣O(nlogn)的歸並排序和堆排序快(見4-41)。 另外,和堆排序相比,快速排序的元素掃描是線性 ...
目錄 系列簡介 不用*和/計算整數除法 25匹馬找出前5名 估算題樣例 系列簡介: 《算法設計手冊》(The Algorithm Design Manual)是本比較經典的算法書了。如果說《算法導論》偏向於數學,那么《算法設計手冊》更偏向於工程應用 ...
其他章節 1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 ...
在這部分,我們將查看ThreadPool 類的多個方面並學習如何在我們的.NET 應用程序中使用ThreadPool 類的內容創建線程池。ThreadPool 類提供的線程可以用來做以下事情: 1. 處理工作組件 2. 處理異步I/O 調用 3. 處理定時器 4. 等待 ...
本章的之前部分內容主要介紹如何在.NET Framework 中使用線程池的概念。現在我們要介紹如何使用C# 實現創建並使用線程池的.NET 應用程序。如之前描述的那樣,System.Threading 命名空間中包含的ThreadPool 類可以被用於在.NET 應用程序中創建一個線程池 ...
在這部分,我們將使用ThreadPool 和MSMQ 進行消息收發。MSMQ 是一個分布式隊列,通過MSMQ 一個應用程序可以異步地與另外一個應用程序通信。 在一個典型的場景中,我們要向維護一個隊列的MSMQ 服務器發送消息,MSMQ 發送方與MSMQ 服務器(特定隊列)之間創建一個連接 ...
HashMap源碼嘛,知道原理嘛? 針對這個問題,嗯,當然是必須看過HashMap源碼。至於原理,下面那張圖很 ...