編程的樂趣 用 Python 解算法謎題 (Programming for the Puzzled: Learn to Program While Solving Puzzles)
[美] 斯裏尼·德瓦達斯(Srini Devadas)
- 出版商: 人民郵電
- 出版日期: 2019-06-01
- 定價: $354
- 售價: 8.5 折 $301
- 語言: 簡體中文
- ISBN: 7115509433
- ISBN-13: 9787115509437
-
相關分類:
Python、Python
- 此書翻譯自: Programming for the Puzzled: Learn to Program While Solving Puzzles (MIT Press)
立即出貨 (庫存 < 3)
買這商品的人也買了...
-
Debug Hacks 除錯駭客 -- 極致除錯的技巧與工具$580$458 -
Python 錦囊妙計, 3/e (Python Cookbook, 3/e)$880$695 -
Python 好好玩-趣學電玩遊戲程式設計 (Invent Your Own Computer Games with Python, 4/e)$450$356 -
給工程師的第一本理財書:程式金融交易的 118個入門關鍵技巧$500$390 -
$714Effective Java, 3/e (簡體中文版) -
物件導向 Python 與 TensorFlow 應用$490$441 -
培養與鍛鍊程式設計的邏輯腦:程式設計大賽的 128個進階技巧 (使用 Python)$620$484 -
最佳案例 Python 套件12堂課$680$612 -
$754深度學習之 TensorFlow 工程化項目實戰 -
重構|改善既有程式的設計, 2/e (繁中平裝版)(Refactoring: Improving The Design of Existing Code, 2/e)$800$600 -
管理數學與 Python:數據分析的必修課$520$468 -
$281PyTorch 深度學習 (Deep Learning with PyTorch: A practical approach to building neural network models using PyTorch) -
動手學深度學習$510$485 -
超圖解 Python 程式設計入門$650$553 -
$327Python數據科學與機器學習 從入門到實踐 -
$658Python 數據分析與數據化運營, 2/e -
Python 最強入門邁向頂尖高手之路 -- 王者歸來 (全彩版)$1,000$790 -
Working Effectively with Legacy Code : 管理、修改、重構遺留程式碼的藝術 (中文版)$720$562 -
Pandas 資料分析實戰:使用 Python 進行高效能資料處理及分析 (Learning pandas : High-performance data manipulation and analysis in Python, 2/e)$580$452 -
Python 技術者們 - 練功!老手帶路教你精通正宗 Python 程式 (The Quick Python Book, 3/e)$780$663 -
$294圖解 LeetCode 初級算法 (Python版) -
機器學習的數學基礎 : AI、深度學習打底必讀$580$458 -
圖解 Docker & Kubernetes 的知識與使用方法$620$490 -
Python 出神入化:Clean Coder 才懂的 Pythonic 技法,為你的程式碼畫龍點睛! (Clean Code in Python, 2/e)$720$562 -
黑帽 Python|給駭客與滲透測試者的 Python 開發指南, 2/e (Black Hat Python : Python Programming for Hackers and Pentesters, 2/e)$450$356
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
這是一本介紹通過解決復雜謎題來學習編程的書,書中的代碼用Python語言編寫。與以往的編程書不同,本書將對代碼功能的理解與編程語言語法和語義的理解分離開來,從解每個謎題開始,先給出解謎題的算法,隨後用Python語法和語義實現對應的算法,並適當做出解釋。本書包含了21個謎題,其中很多謎題都廣為流傳,如多皇後、漢諾塔、在幾秒鐘內解決數獨問題、驗證六度分隔猜想等,每個謎題後面都配有不同難度的編程習題,幫讀者加深對相關算法的理解。
本書在算法謎題的趣味性和電腦編程的實用性之間搭建了一座橋梁,內容饒有趣味,講述易於理解,適合已掌握初級編程概念並對算法感興趣的學習者閱讀和參考。
作者簡介
作者:[美]斯裏尼·德瓦達斯(Srini Devadas)譯者:戴旭李亞舟許亞運
作者簡介
斯裏尼·德瓦達斯(Srini Devadas)麻省理工學院(MIT)計算機科學和人工智能實驗室(CSAIL)電子工程和計算機科學教授,自1988年起在麻省理工學院任教。他目前的研究興趣主要集中在計算機體系結構、計算機安全和應用密碼學領域。他因其研究成就獲得了2014年IEEE計算機學會技術成就獎、2015年ACM/IEEE理乍得·牛頓技術影響力獎和2017年IEEE華萊士·麥克道爾獎。他在MIT教授編程基礎、算法導論和算法設計與分析等課程。
譯者簡介
戴旭高級項目管理師,從事金融信息化和電子政務工作多年,現為杭州城市大腦研發團隊成員,譯有《Python快速入門》《Android平板電腦開發秘籍》《編寫高性能的.NET代碼》等。
李亞舟現任職於知乎,負責數據庫平臺,關註存儲、分佈式系統、容器等技術,譯有《Haskell趣學指南》。
許亞運曾任職於高德、餓了麼,有多年因特網行業後端開發經驗,愛好Python,喜歡探索新技術。
目錄大綱
目錄
謎題1保持一致1
1.1尋找想法相同的連續人員2
1.2字符串、列表和元組3
1.3從算法到代碼4
1.4代碼優化7
1.5列表創建與修改7
1.6作用域8
1.7算法優化9
1.8單遍算法9
1.9應用10
1.10習題11
謎題2參加派對的最佳時間13
2.1反複檢查時間14
2.2聰明地檢查時間16
2.3有序的表示20
2.4習題20
謎題3擁有(需要一點校準的)讀心術22
3.1編程完成助手的工作24
3.2編程完成魔術師的任務28
3.3獨自掌握技巧29
3.4信息編碼31
3.5 4張牌的魔術戲法31
3.6習題32
謎題4讓皇後保持分離34
4.1系統地搜索36
4.2用二維列表(數組)表示棋盤38
4.3用一維列表(數組)表示棋盤41
4.4疊代枚舉45
4.5習題46
謎題5請打碎水晶47
5.1兩顆球的高效搜索48
5.2 d顆球的高效搜索49
5.3對兩顆球減少拋球次數53
5.4習題54
謎題6尋找假幣55
6.1分治55
6.2遞歸分治57
6.3三進製表示60
6.4稱量謎題一個流行的變體61
6.5習題61
謎題7跳到平方根62
7.1疊代查找62
7.2折半查找65
7.3二分搜索67
7.4三分搜索69
7.5習題69
謎題8猜猜誰不來吃晚餐71
8.1第一次嘗試72
8.2始終尋找最大選擇73
8.3生成所有組合74
8.4移除不友好的組合76
8.5選擇最大組合76
8.6優化內存使用77
8.7應用78
8.8習題79
謎題9美國達人秀81
9.1每次生成並測試一個組合83
9.2確定缺少一門絕活的組合84
9.3應用85
9.4習題86
謎題10多皇後88
10.1遞歸求取最大公約數88
10.2遞歸獲取斐波那契數列89
10.3遞歸求解N皇後問題91
10.4遞歸的應用94
10.5習題96
謎題11請滿鋪庭院98
11.1歸併排序99
11.2歸併排序的執行與分析101
11.3基線條件即2 × 2庭院102
11.4遞歸步驟103
11.5列表推導式的基礎知識107
11.6美觀打印107
11.7另一個滿鋪謎題109
11.8習題109
謎題12漢諾塔111
12.1漢諾塔的遞歸解決方案112
12.2相鄰漢諾塔的遞歸解決方案114
12.3與格雷碼的關係117
12.4習題118
謎題13沒條理的工匠121
13.1分治時的圍繞基準點分揀122
13.2與排序算法的關係123
13.3原地劃分126
13.4排序也瘋狂129
13.5習題129
謎題14再也不玩數獨了131
14.1遞歸式數獨求解132
14.2遞歸搜索過程中的推理136
14.3數獨謎題的難度140
14.4習題141
謎題15統計零錢的組合方式143
15.1鈔票的遞歸選取143
15.2消除重複145
15.3用最少的鈔票支付147
15.4習題148
謎題16貪心是好事150
16.1貪心算法151
16.2最短歷時規則151
16.3最早開始時間規則151
16.4最少衝突規則152
16.5最早結束時間規則152
16.6貪心算法何時有效157
16.7習題158
謎題17字母也瘋狂160
17.1每次找到一組變位詞160
17.2通過排序對變位詞進行分組162
17.3通過散列操作對變位詞進行分組164
17.4字典165
17.5用字典對變位詞進行分組167
17.6散列表169
17.7習題171
謎題18充分利用記憶173
18.1遞歸解決方案173
18.2回溯硬幣的選擇過程175
18.3 memoization技術178
18.4避免使用異常179
18.5動態規劃180
18.6習題180
謎題19要記得周末184
19.1找到分區185
19.2二分圖的判別187
19.3圖的表示189
19.4圖的著色192
19.5習題193
謎題20六度分隔195
20.1廣度優先搜索197
20.2集合198
20.3在廣度優先搜索中使用集合199
20.4歷史202
20.5習題203
謎題21問題有價205
21.1用字典構造二叉查找樹207
21.2字典形式下的二叉查找樹操作209
21.3面向對像風格的二叉查找樹212
21.4回到謎題:算法216
21.5解決謎題的代碼218
21.6多種數據結構的對比222
21.7習題222


