幫助中心 | 我的帳號 | 關於我們

圖解演算法/圖解新科技系列

  • 作者:(日)增井敏克|責編:何英嬌|譯者:潘詠雪
  • 出版社:中國科學技術
  • ISBN:9787523605394
  • 出版日期:2024/06/01
  • 裝幀:平裝
  • 頁數:218
人民幣:RMB 69 元      售價:
放入購物車
加入收藏夾

內容大鋼
    許多人聽到「演算法」這個詞,就覺得它很難懂,需要專業的編程知識才能明白。然而,演算法只是一個計算的「步驟」,不需要電腦和編程語言基礎。
    本書介紹了演算法的基礎知識,數據的儲存、分類、查找方法,以及機器學習中使用的演算法等,由淺入深,圖文配套,並結合使用場景和案例進行細緻講解,初學者讀起來也毫無壓力。
    除了按順序閱讀,獲取系統的知識,讀者還可以從目錄中挑選感興趣的主題和關鍵詞,按照自己的需求閱讀,是一本實用性滿分的演算法入門書。

作者介紹
(日)增井敏克|責編:何英嬌|譯者:潘詠雪
    增井敏克,1979年生於奈良,畢業於大阪府立大學研究生院。增井IT工程師事務所代表、註冊工程師(信息工程學方向)。從事旨在「將商務、數學和IT結合以正確、高效使用電腦」的技能提升指導、軟體開發以及信息安全咨詢等工作。掌握C/C++、C#、Java、PHP和Ruby等20多種編程語言。著作有《在家就能學會的安全基礎》等。目前在面向IT工程師提供業務技能評估服務的平台CodeIQ上負責人氣欄目「每周演算法」的出題和評審工作。

目錄
第1章  演算法基礎知識?演算法的作用是什麼??
  1-1  進行快速準確運算的步驟
    編程、演算法
  1-2  讓數據更容易處理
    文本文件、二進位文件、非結構化數據、結構化數據、數據結構
  1-3  什麼是好的電腦程序
    使用效率
  1-4  比較各種演算法的標準
    計算複雜性、漸進、漸進符號
  1-5  差異取決於實施的語言
    編程語言、編譯器、解釋器、即時編譯
  1-6  一套便捷的演算法集合
    庫
  1-7  演算法權利
    專利權、軟體專利、著作權、開放源代碼
  1-8  使用圖片講解演算法
    流程圖
  1-9  紙上計算的演算法
    筆算
  1-10  尋找素數
    素數、埃拉托斯特尼篩法
  1-11  找出最大公約數
    最大公約數、歐幾里得演算法
  1-12  通過拼圖學習演算法
    漢諾塔問題
  1-13  使用隨機值進行檢查
    隨機數、偽隨機數、隨機種子、蒙特卡羅方法
第2章  如何存儲數據??它們各自的結構和特點?
  2-1  整數是如何表示的
    十進位、二進位、十六進位
  2-2  數據的單位
    比特、位元組
  2-3  小數是如何表示的?
    小數、浮點數、實數類型
  2-4  字元表示
    字元、字元代碼、ASCII、2位元組字元、亂碼字元
  2-5  一個接一個地分配
    變數、賦值、常量
  2-6  要存儲的數據大小
    數據類型、整數類型、數據類型轉換
  2-7  在連續的區域內存儲
    數組、元素、索引
  2-8  以人們容易理解的方式表示
    關聯數組、字典、散列表、地圖、碰撞
  2-9  存儲數據的位置
    地址、指針
  2-10  以表格形式存儲數據
    二維數組、多維數組
  2-11  存儲單詞和句子
    字元串、空字元

  2-12  表達複雜的數據結構
    結構體、枚舉類型
  2-13  排成一排的形式
    鏈表
  2-14  雙向鏈接的形式
    雙向鏈表、循環鏈表
  2-15  存儲在一個分支結構中
    樹狀結構、二叉樹、完整二叉樹
  2-16  滿足條件的樹狀結構
    堆
  2-17  適合搜索演算法的數據結構
    二叉搜索樹、平衡樹
  2-18  平衡樹的類型
    B樹、B+樹、B*樹
  2-19  存儲無序的數據
    集合
  2-20  從最後的存儲中檢索
    堆棧、LIFO、推入、彈出
  2-21  便於按其保存的順序進行檢索的格式
    隊列、FIFO、排隊、脫隊
  2-22  虛擬內存分頁演算法
    虛擬內存、分頁演算法、LFU、LRU
第3章  對數據進行分類?按照規則排列數字?
  3-1  升序或降序分揀
    排序
  3-2  維持相同值的順序
    穩定排序、內部排序、外部排序
  3-3  通過選擇最大或最小值進行排序
    選擇排序
  3-4  將數據添加到一個對齊的數組中
    插入排序
  3-5  與緊隨其後的元素進行比較
    氣泡排序
  3-6  數組的雙向排序
    雞尾酒排序
  3-7  交換排序和插入排序相結合,速度更快
    希爾排序
  3-8  在創建堆的同時進行排序
    堆排序
  3-9  通過比較合併多個數據
    合併排序
  3-10  一般性的快速和常用排序
    快速排序、分治法
  3-11  當可能的值有限制時很有用的排序方法
    桶排序、箱排序、基數排序
  3-12  通過提供空隙進行排序
    圖書館排序、跳躍列表
  3-13  趣味排序方法
    獨裁者排序、猴子排序
  3-14  我應該選擇哪種方法?

    計算複雜性的比較
第4章  查找數據?如何快速找到所需的值??
  4-1  從多個數據集中找到符合標準的那一個
    搜索
  4-2  一個不漏地搜索
    全局搜索、徹底搜索
  4-3  從頭開始檢查
    線性搜索
  4-4  從排序后的數據中搜索
    二分搜索
  4-5  按距離遠近順序搜索
    廣度優先搜索
  4-6  依次搜索相鄰的對象
    深度優先搜索、回溯
  4-7  深入搜索層次結構
    遞歸、遞歸調用、分支定界
  4-8  差異取決於樹狀結構的遍歷順序
    前序遍歷、後序遍歷、中序遍歷、波蘭表示法、逆波蘭表示法
  4-9  也可以在相反的方向進行搜索
    雙向搜索
  4-10  通過改變起點和終點進行搜索
    尺取法
  4-11  通過關注邊緣尋找最短路徑
    最短路徑問題、貝爾曼-福特演算法
  4-12  通過關注節點找到最短路徑
    戴克斯特拉演算法
  4-13  使用經驗法則進行搜索
    A*演算法、歐幾里得距離、曼哈頓距離
  4-14  找到損害最小的那一個
    極小化極大演算法、Alpha-Beta演算法
  4-15  在句子中搜索文本字元串
    暴力搜索、窮舉搜索、KMP演算法
  4-16  以一種巧妙的方式搜索字元串
    BM演算法
  4-17  搜索符合特定模式
    正則表達式
第5章  機器學習中使用的演算法?支持人工智慧的計算方法?
  5-1  從數據中進行分類和預測
    機器學習、統計機器學習
  5-2  基於正確數據的學習
    有監督學習、過擬合
  5-3  通過從數據中提取特徵進行分類
    無監督學習、聚類
  5-4  獎勵預期結果
    強化學習、行為、代理、環境、狀態、多代理
  5-5  用於分類和回歸的樹狀結構
    決策樹、不純度、信息增益
  5-6  多重決策樹下的少數服從多數
    隨機森林、集成學習、裝袋演算法、提升演算法
  5-7  分離時最大限度地增加與邊界的間距

    支持向量機、超平面、硬間隔、軟間隔
  5-8  0到1範圍內的概率預測
    回歸分析、最小二乘法、邏輯回歸分析
  5-9  模仿人腦信號交換的數學模型
    神經網路、反向傳播演算法
  5-10  深化層次結構
    深度學習、CNN、RNN
  5-11  能夠生成不存在數據的人工智慧
    GAN、深度偽造
  5-12  圖像去噪和邊界增強
    圖像過濾、平滑、邊緣檢測
  5-13  處理和執行過程中的隨機選擇
    隨機選擇演算法、啟髮式演算法
  5-14  模仿生物進化
    遺傳演算法
  5-15  隨著時間的推移改變隨機性
    爬山演算法、模擬退火演算法
  5-16  對附近的物體有很強的學習能力
    自組織映射
  5-17  快速求導近似解
    牛頓法、梯度下降法、隨機梯度下降法
  5-18  對大量的數據進行分類
    k均值演算法
  5-19  數據的維度被縮小,並在新的指標中表達
    主成分分析
第6章  其他演算法?典型案例?
  6-1  將問題分割成更小的問題並記錄結果
    動態編程、記憶化
  6-2  減少數據量
    壓縮、解壓
  6-3  壓縮重複的內容
    運行長度編碼、哈夫曼編碼
  6-4  檢測輸入的錯誤
    校驗碼、奇偶校驗碼
  6-5  消除雜訊和雜聲
    糾錯碼、漢明碼
  6-6  通過加密演算法提高安全性
    加密、解密、密文、明文
  6-7  簡單密碼及其破譯
    愷撒密碼、ROT13
  6-8  低負載加密技術
    共享密鑰加密、私鑰加密、密鑰配送問題
  6-9  安全的密鑰共享
    Diffie-Hellman密鑰交換
  6-10  利用大整數分解素因數的困難
    公鑰加密、RSA加密演算法
  6-11  用短密鑰保證安全
    橢圓曲線加密、密碼危機
  6-12  用於社交媒體的演算法