程序員實用算法

程序員實用算法
定價:390
NT $ 339
 

內容簡介

本書重點關注的是實用、立即可用的代碼,並且廣泛討論了可移植性和特定于實現的細節。本書作者介紹了一些有用但很少被討論的算法,它們可用于語音查找、日期和時間例程(直到公元1年)、B樹和索引文件、數據壓縮、任意精度的算術、校驗和與數據驗證,並且還最全面地介紹了查找例程、排序算法和數據結構。

  本書結構清晰,示例豐富,可作為廣大程序員的參考用書。
 

目錄

譯者序
前言
致謝
第1章 緒論
1.1 評估算法
1.2 修改算法
1.2.1 主要的優化︰I/O
1.2.2 主要的優化︰函數調用
1.3 資源和參考資料
第2章 基本數據結構
2.1 鏈表
2.1.1 雙向鏈表
2.1.2 鏈表的其他特征
2.2 棧和隊列
2.2.1 棧的特征
2.2.2 隊列的特征
第3章 散列
3.1 散列的概念
3.2 散列函數
3.3 沖突解決方法
3.3.1 線性再散列法
3.3.2 非線性再散列法
3.3.3 外部拉鏈法
3.4 性能問題
3.5 資源和參考資料
第4章 查找
4.1 查找的特征
4.1.1 準備時間
4.1.2 運行時間
4.1.3 回溯的需要
4.2 蠻力查找
4.3 Boyer-Moore查找
4.3.1 啟發式方法#1︰跳過字符
4.3.2 啟發式方法#2︰重復模式
4.4 多字符串查找
4.5 用于正則表達式的字符串查找︰grep
4.6 近似字符串匹配技術
4.7 語音比較︰Soundex算法
4.8 Metaphone︰現代的Soundex
4.9 選擇技術
4.10 資源和參考資料
4.10.1 通用參考資料
4.10.2 Boyer-Moore
4.10.3 多字符串查找
4.10.4 正則表達式查找
4.10.5 近似字符串匹配
4.10.6 Soundex算法和Metaphone算法
第5章 排序
5.1 排序的基本特征
5.1.1 穩定性
5.1.2 對哨兵的需求
5.1.3 對鏈表進行排序的能力
5.1.4 輸入的階的相關性
5.1.5 對額外存儲空間的需求
5.1.6 內部排序技術與外部排序技術
5.2 排序模型
5.2.1 冒泡排序
5.2.2 插入排序
5.2.3 希爾排序
5.2.4 快速排序
5.2.5 堆排序
5.3 對鏈表進行插入排序
5.4 對鏈表進行快速排序
5.5 對多個鍵進行排序——不穩定排序的修正方法
5.6 網絡排序
5.7 小結︰選擇一種排序算法
5.8 資源和參考資料
第6章 樹
6.1 二叉樹
6.1.1 樹查找
6.1.2 節點插入
6.1.3 節點刪除
6.1.4 二叉查找樹的性能
6.1.5 AVL樹
6.2 紅黑樹
6.3 伸展樹
6.4 B樹
6.4.1 保持B樹平衡
6.4.2 實現B樹算法
6.4.3 B樹實現的代碼
6.5 可以看見森林嗎
6.6 資源和參考資料
第7章 日期和時間
7.1 日期例程的庫
7.2 時間例程
7.3 用于日期和時間數據的格式
7.4 最後的提醒
7.5 資源和參考資料
第8章 任意精度的算術
8.1 構建計算器8.2表示數字
8.3 計算
8.4 加法
8.5 減法
8.6 乘法
8.7 除法
8.8 關于計算器要注意的最後幾點
8.9 用于計算平方根的牛頓算法
8.10 分期付款表
8.11 資源和參考資料
第9章 數據壓縮
9.1 行程編碼
9.2 霍夫曼壓縮
9.2.1 代碼
9.2.2 其他問題
9.3 滑動窗口壓縮
9.4 基于字典的壓縮(LZW)
9.4.1 LZW算法的偽代碼
9.4.2 LZW壓縮的實現
9.4.3 填滿字典
9.5 使用哪種壓縮方法
9.6 資源和參考資料
第10章 數據完整性和驗證
10.1 簡單的校驗和
10.2 加權校驗和
10.3 循環冗余校驗
10.3.1 CRC-CCITT
10.3.2 CRC-16
10.3.3 CRC-32
10.4 資源和參考資料
 

數據結構與算法是計算機專業的核心課程,是計算機軟件開發和應用人員必備的專業基礎。今天的大多數關于算法的圖書都是大學教科書,或者是令人厭倦的相同算法集合改頭換面後的作品。本書是給出所有算法的完整代碼實現的第一本書,這些算法對于開發人員在其日常工作中是有用的。

本書介紹了關于算法的基礎知識、基本數據結構、散列、查找、排序、樹、日期和時間、任意精度的算術運算、數據壓縮以及數據完整性和驗證等內容。本書的目的是為在應用程序中使用的算法提供一個實用的綱要。與關于算法的大多數著作不同的是,本書不是一本教材︰書中沒有提供實現細節,把它作為練習留給讀者完成;也沒有利用較小的代碼段對算法進行高度理論化的討論,以說明如何進行實現。相反,本書完全用c語言實現了各種算法,並且討論了如何在各種應用程序中最佳地使用它們。

本書只要求讀者具有C語言的初級知識以及不超出基本代數之外的數學知識。源代碼是符合ANSI標準的,並且對它們進行了測試,它們都可以運行在UNIX下以及Borland、Microsoft和Watcom的編譯器上。

本書非常適合于高等院校計算機專業的學生閱讀,對于從事計算機軟件開發的人員,也將從本書中受益匪淺。

參加本書翻譯的人員有︰陳宗斌、張景友、易小麗、陳婷、管學崗、王新彥、金惠敏、張海峰、徐嘩、戴鋒。

由于時間緊迫,加之譯者水平有限,錯誤在所難免,懇請廣大讀者批評指正。
網路書店 類別 折扣 價格
  1. 新書
    87
    $339