圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式

胡昭民

  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-1
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-2
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-3
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-4
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-5
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-6
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-7
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-8
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-9
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-10
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-11
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-12
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-13
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-14
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-15
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-16
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-17
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-18
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-19
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-20
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-21
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-22
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-23
  • 圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-24
圖解資料結構 × 演算法:運用 Python 結合 ChatGPT 輔助驗證及寫程式-preview-1

買這商品的人也買了...

商品描述

AI再進化!

 

使用ChatGPT 高效率生成 Python程式碼



資料結構是電腦科學領域中一門極為重要的基礎課程,對於從事資訊相關工作的專業人員而言,它具有不可忽視的價值。無論是在學術考試還是實際應用中,對資料結構的深入理解都至關重要。然而,對初學者而言,理解資料結構中的理論和演算法可能會帶來困難和挫折感。

本書的獨特之處在於使用豐富的圖例解釋相對複雜的理論,並以簡潔明瞭的方式詮釋資料結構理論。從基礎的概念開始,逐步使用Python語言解釋陣列、堆疊、鏈結串列、佇列、樹狀結構、圖形、排序、搜尋等重要主題。附錄中整理了資料結構相關的專有名詞,並提供了重要演算法的介紹和實作範例。

本書以簡潔有力、邏輯清晰的方式優化文句表達,並特別收集了大量習題,以確保讀者掌握各章節的學習成果。演算法節點盡量使用Python程式碼展示,而非虛擬碼形式。此外,本書還會展示由 ChatGPT 生成的程式碼。我們相信,Chat GPT生成的程式碼具有簡潔性和精簡性,並能夠提供更好的解決方案。



本書特色
完整的內容結構和清晰的邏輯,豐富的圖例解說提高可讀性
使用Python語言實作資料結構理論,並透過範例程式碼深入解析
參閱國家考試題型設計難易適中的習題,立即檢驗學習效果
附錄彙整出資料結構相關的專有名詞,方便查詢加深學習印象


◇特別提供◇
——————————————————
ChatGPT 生成程式碼
——————————————————
可與人工編寫程式碼相互比較作為參考!


|本書範例程式碼檔案,請至博碩官網下載|

目錄大綱

Chapter 0 ChatGPT 與 Python 程式設計黃金 入門課
0-1 認識聊天機器人
  0-1-1 聊天機器人的種類
0-2 ChatGPT 初體驗
  0-2-1 註冊免費 ChatGPT 帳號
  0-2-2 更換新的機器人
  0-2-3 登出 ChatGPT
0-3 使用 ChatGPT 寫 Python 程式
  0-3-1 利用 ChatGPT AI 撰寫 Python 程式
  0-3-2 複製 ChatGPT 幫忙寫的程式碼
  0-3-3 ChatGPT AI 程式與人工撰寫程式的比較
0-4 ChatGPT AI Python 程式範例集
  0-4-1 使用 Pygame 遊戲套件繪製多媒體圖案
  0-4-2 以內建模組及模擬大樂透的開獎程式
  0-4-3 建立四個主功能表的視窗應用程式
  0-4-4 演算法的應用:寫一支迷宮問題的解決方案
  0-4-5 海龜繪圖法繪製兩款精美的圖形
0-5 課堂上學不到的 ChatGPT 使用秘訣
  0-5-1 能記錄對話內容
  0-5-2 專業問題可事先安排人物設定腳本
  0-5-3 目前只回答 2021 年前
  0-5-4 善用英文及 Google 翻譯工具
  0-5-5 熟悉重要指令
  0-5-6 充份利用其它網站的 ChatGPT 相關資源
0-6 利用 ChatGPT 輕鬆開發 AI 小遊戲
  0-6-1 請 ChatGPT 自我推薦以 Python 實作的小遊戲
  0-6-2 猜數字遊戲
  0-6-3 OX 井字遊戲
  0-6-4 猜拳遊戲
  0-6-5 牌面比大小遊戲

Chapter 1 資料結構與演算法入門
1-1 資料結構的定義
  1-1-1 資料與資訊
  1-1-2 資料的特性
  1-1-3 資料結構的應用
1-2 演算法
  1-2-1 演算法的條件
  1-2-2 演算法的表現方式
1-3 常見演算法簡介
  1-3-1 分治法
  1-3-2 貪心法
  1-3-3 枚舉法
  1-3-4 巴斯卡三角形演算法
  1-3-5 質數求解演算法
1-4 演算法效能分析
  1-4-1 Big-oh
  1-4-2 Ω(omega)
  1-4-3 θ(theta)

Chapter 2 陣列結構
2-1 線性串列簡介
  2-1-1 儲存結構簡介
2-2 認識陣列
  2-2-1 二維陣列
  2-2-2 三維陣列
  2-2-3 n維陣列
2-3 矩陣
  2-3-1 矩陣相加
  2-3-2 矩陣相乘
  2-3-3 轉置矩陣
  2-3-4 稀疏矩陣
  2-3-5 上三角形矩陣
  2-3-6 下三角形矩陣
  2-3-7 帶狀矩陣
2-4 陣列與多項式
  2-4-1 認識多項式

Chapter 3 串列結構
3-1 單向串列
  3-1-1 建立單向串列
  3-1-2 走訪單向串列
  3-1-3 單向串列插入新節點
  3-1-4 單向串列刪除節點
  3-1-5 單向串列的反轉
  3-1-6 單向串列的連結功能
  3-1-7 多項式串列表示法
3-2 環狀串列
  3-2-1 環狀串列的建立與走訪
  3-2-2 環狀串列插入新節點
  3-2-3 環狀串列刪除節點
  3-2-4 環狀串列的連結
  3-2-5 環狀串列與稀疏矩陣表示法
3-3 雙向串列
  3-3-1 雙向串列建立與走訪
  3-3-2 雙向串列加入新節點
  3-3-3 雙向串列刪除節點

Chapter 4 堆疊
4-1 堆疊簡介
  4-1-1 陣列實作堆疊
  4-1-2 串列實作堆疊
4-2 堆疊的應用
  4-2-1 遞迴演算法
  4-2-2 動態規劃演算法
  4-2-3 河內塔問題
  4-2-4 回溯法-老鼠走迷宮
  4-2-5 八皇后問題
4-3 算術運算式的表示法
  4-3-1 中序轉為前序與後序
  4-3-2 前序與後序轉為中序
  4-3-3 中序表示法求值
  4-3-4 前序法的求值運算
  4-3-5 後序法的求值運算

Chapter 5 佇列
5-1 認識佇列
  5-1-1 佇列的工作運算
  5-1-2 佇列的應用
  5-1-3 陣列實作佇列
  5-1-4 串列實作佇列
5-2 環狀佇列、雙向佇列與優先佇列
  5-2-1 環狀佇列
  5-2-2 雙向佇列
  5-2-3 優先佇列

Chapter 6 樹狀結構
6-1 樹的基本觀念
  6-1-1 樹專有名詞簡介
6-2 二元樹簡介
  6-2-1 二元樹的定義
  6-2-2 特殊二元樹簡介
6-3 二元樹的儲存方式
  6-3-1 一維陣列表示法
  6-3-2 串列表示法
6-4 二元樹走訪
  6-4-1 中序走訪
  6-4-2 後序走訪
  6-4-3 前序走訪
  6-4-4 二元樹節點的插入與刪除
  6-4-5 二元運算樹
6-5 引線二元樹
  6-5-1 二元樹轉為引線二元樹
6-6 樹的二元樹表示法
  6-6-1 樹化為二元樹
  6-6-2 二元樹轉換成樹
  6-6-3 樹林化為二元樹
  6-6-4 二元樹轉換成樹林
  6-6-5 樹與樹林的走訪
  6-6-6 決定唯一二元樹
6-7 最佳化二元搜尋樹
  6-7-1 延伸二元樹
  6-7-2 霍夫曼樹
6-8 平衡樹
  6-8-1 平衡樹的定義
6-9 進階樹狀結構的應用
  6-9-1 決策樹
  6-9-2 B樹
  6-9-3 二元空間分割樹(BSP)
  6-9-4 四元樹 / 八元樹

Chapter 7 圖形結構
7-1 圖形簡介
  7-1-1 尤拉環與尤拉鏈
  7-1-2 圖形的定義
  7-1-3 無向圖形
  7-1-4 有向圖形
7-2 圖形的資料表示法
  7-2-1 相鄰矩陣法
  7-2-2 相鄰串列法
  7-2-3 相鄰複合串列法
  7-2-4 索引表格法
7-3 圖形的走訪
  7-3-1 先深後廣法
  7-3-2 先廣後深搜尋法
7-4 擴張樹
  7-4-1 DFS擴張樹及BFS擴張樹
  7-4-2 最小花費擴張樹
  7-4-3 Kruskal演算法
  7-4-4 Prim演算法
7-5 圖形最短路徑
  7-5-1 單點對全部頂點
  7-5-2 兩兩頂點間的最短路徑
  7-5-3 A* 演算法
7-6 AOV網路與拓樸排序
  7-6-1 拓樸序列簡介
7-7 AOE網路
  7-7-1 臨界路徑

Chapter 8 排序演算法
8-1 認識排序
  8-1-1 排序的分類
  8-1-2 排序演算法分析
8-2 內部排序法
  8-2-1 氣泡排序法
  8-2-2 雞尾酒排序法
  8-2-3 選擇排序法
  8-2-4 插入排序法
  8-2-5 謝耳排序法
  8-2-6 合併排序法
  8-2-7 快速排序法
  8-2-8 堆積排序法
  8-2-9 基數排序法

Chapter 9 搜尋演算法與雜湊函數
9-1 常見搜尋演算法
  9-1-1 循序搜尋法
  9-1-2 二分搜尋法
  9-1-3 內插搜尋法
  9-1-4 費氏搜尋法
9-2 雜湊搜尋法
  9-2-1 雜湊法簡介
9-3 常用的雜湊函數
  9-3-1 除法
  9-3-2 中間平方法
  9-3-3 折疊法
  9-3-4 數位分析法
9-4 碰撞與溢位問題的處理
  9-4-1 線性探測法
  9-4-2 平方探測法
  9-4-3 再雜湊法
  9-4-4 鏈結串列法

附錄A 資料結構專有名詞索引