作 者:(美)約翰?谷泰格 著 陳光欣 譯
定 價:69
出 版 社:人民郵電出版社
出版日期:2018年02月01日
頁 數:328
裝 幀:平裝
ISBN:9787115473769
掌握多種不同的思維方式是每個人在大學時代的必修課。具備使用計算思維解決問題的能力是程序員入門的基本技能。本書基於作者開授的MIT熱門MOOC教程編寫,旨在培養讀者的計算思維,為其日後的IT生涯打下堅實的編程基礎。- 以Python 3為示例,涵蓋Python大部分特性,重在介紹編程語言可以做什麼- 如何繫統性地組織、編寫、調試中等規模的程序- 理解計算復雜度- 將模糊的問題描述轉化為明確的計算方法,以此解決問題,並深刻理解整個過程- 掌握有用的算法以及問題簡化技術- 使用隨機性和模擬技術清晰闡述等
●目 錄 * 1章 啟程1* 2章 Python簡介62.1 Pytho素72.1.1 對像、表達式和數值類型82.1.2 變量與賦值92.1.3 Python IDE112.2 程序分支122.3 字符串和輸入142.3.1 輸入152.3.2 雜談字符編碼162.4 迭代17第3章 一些簡單的數值程序203.1 窮舉法203.2 for循環223.3 近似解和二分查找243.4 關於浮點數273.5 牛頓 拉弗森法29第4章 函數、作用域與抽像314.1 函數與作用域324.1.1 函數定義324.1.2 關鍵字參數和默認值334.1.3 作用域344.2 規範374.3 遞歸394.3.1 斐波那契數列404.3.2 回文424.4 全局變量454.5 模塊464.6 文件47第5章 結構化類型、可變性與高階函數505.1 &nb組505.2 範圍525.3 列表與可變性525.3.1 克隆575.3.2 列表推導575.4 函數對像585.5 字組、範圍與列表605.6 字典61第6章 測試與調試656.1 測試656.1.1 黑盒測試666.1.2 白盒測試686.1.3 執行測試696.2 調試706.2.1 學習調試726.2.2 設計實驗726.2.3 遇到麻煩時756.2.4 找到“目標”錯誤之後76第7章 異常與斷言777.1 處理異常777.2 將異常用作控制流807.3 斷言82第8章 類與面向對像編程838.1 抽像數據類型與類838.1.1 使用抽像數據類型設計程序878.1.2 使用類記錄學生與教師878.2 繼承908.2.1 多重繼承928.2.2 替換原則938.3 封裝與信息隱藏948.4 進階示例:抵押貸款99第9章 算法復雜度簡介1039.1 思考計算復雜度1039.2 漸近表示法1069.3 一些重要的復雜度1079.3.1 常數復雜度1079.3.2 對數復雜度1089.3.3 線性復雜度1089.3.4 對數線性復雜度1099.3.5 多項式復雜度1099.3.6 指數復雜度1119.3.7 復雜度對比112* 10章 一些簡單算法和數據結構11410.1 搜索算法11510.1.1 線性搜索與間素11510.1.2 二分查找和利用假設11610.2 排序算法11910.2.1 歸並排序12010.2.2 將函數用作參數12210.2.3 Python中的排序12310.3 散列表124* 11章 繪圖以及類的進一步擴展12811.1 使用PyLab繪圖12811.2 進階示例:繪制抵押貸款133* 12章 背包與圖的* 優化問題13912.1 背包問題13912.1.1 貪婪算法14012.1.2 0/1背包問題的* 優解14312.2 圖的* 優化問題14512.2.1 一些典型的圖論問題14912.2.2 * 短路徑:深度優先搜索和廣度優先搜索149* 13章 動態規劃15513.1 又見斐波那契數列15513.2 動態規劃與0/1背包問題15713.3 動態規劃與分治算法162* 14章 隨機遊走與數據可視化16314.1 隨機遊走16314.2 醉漢遊走16414.3 有偏隨機遊走17014.4 變幻莫測的田地175* 15章 隨機程序、概率與分布17815.1 隨機程序17815.2 計算簡單概率18015.3 統計推斷18015.4 分布19215.4.1 概率分布19415.4.2 正態分布19515.4.3 連續型和離散型均勻分布19915.4.4 二項式分布與多項式分布20015.4.5 指數分布和幾何分布20015.4.6 本福德分布20315.5 散列與踫撞20415.6 強隊的獲勝概率206* 16章 蒙特卡羅模擬20816.1 帕斯卡的問題20916.2 過線還是不過線21016.3 使用查表法提高性能21316.4 求π的值21416.5 模擬模型結束語218第* 章 抽樣與置信區間22017.1 對波士頓馬拉松比賽進行抽樣22017.2 中心極限定理22517.3 均值的標準誤差228第* 章 理解實驗數據23118.1 彈簧的行為23118.2 彈丸的行為23818.2.1 可決繫數24018.2.2 使用計算模型24118.3 擬合指數分布數據24218.4 當理論缺失時245第* 章 隨機試驗與假設檢驗24719.1 檢驗顯著性24819.2 當心P-值25219.3 單尾單樣本檢驗25419.4 是否顯著25519.5 哪個N25719.6 多重假設258第* 章 條件概率與貝葉斯統計26120.1 條件概率26220.2 貝葉斯定理26320.3 貝葉斯更新264第* 章 謊言、該死的謊言與統計學26721.1 垃圾輸入,垃圾輸出26721.2 檢驗是有缺陷的26821.3 圖形會騙人26821.4 Cum Hoc Ergo Propter Hoc27021.5 統計測量不能說明所有問題27121.6 抽樣偏差27221.7 上下文很重要27321.8 慎用外推法27321.9 得克薩斯神槍手謬誤27421.10 莫名其妙的百分比27621.11 不顯著的顯著統計差別27621.12 回歸假像27721.13 小心為上278第* 章 機器學習簡介27922.1 特征向量28122.2 距離度量283第* 章 聚類28823.1 Cluster類28923.2 K-均值聚類29123.3 虛構示例29223.4 更真實的示例297第* 章 分類方法30324.1 分類器評價30324.2 預測跑步者的性別30624.3 K-* 鄰近方法30824.4 基於回歸的分類器31224.5 從“泰坦尼克”號生還32024.6 總結325Python 3.5速查表326
本書基於MIT 編程思維培訓講義寫成,主要目標在於幫助讀者掌握並熟練使用各種計算技術,具備用計算思維解決現實問題的能力。書中以Python 3 為例,介紹了對中等規模程序的繫統性組織、編寫、調試,幫助讀者深入理解計算復雜度,還講解了有用的算法和問題簡化技術,並探討各類計算工具的使用。與本書* 1版相比,* 2版全面改寫了後半部分,且書中所有示例代碼都從Python 2 換成了Python 3。本書適合對編程知之甚少但想要使用計算方法解決問題的讀者。
(美)約翰?谷泰格 著 陳光欣 譯
約翰?谷泰格(John V. Guttag),1999年-2004年任MIT電氣工程與計算機科學繫主任,所授計算機科學繫列導論課程深受學生歡迎。目前為計算機科學與人工智能實驗室網絡及移動繫統組聯合負責人,還進行軟件工程、機器定理證明、硬件驗證等領域的研究以及培訓工作。獲美國布朗大學英語專業學士學位、應用數學碩士學位,多倫多大學計算機科學博士學位。