零基礎學編程:零基礎學算法

零基礎學編程:零基礎學算法

《零基礎學編程:零基礎學算法(第3版)》分為上、下兩篇,共10章,上篇用5章的篇幅介紹了算法和數據結構的基礎知識,包括基礎算法思想、簡單數據結構、複雜數據結構、排序和查找算法等內容;下篇用4章的篇幅介紹了用數據結構解決實際問題的相關程式,包括解決數學問題、數據結構問題、算法經典問題等內容以及信息學奧賽部分試題的程式,最後一章介紹了與算法和數據結構相關的常見面試題。

基本介紹

  • 中文名:零基礎學編程:零基礎學算法
內容簡介,圖書目錄,

內容簡介

《零基礎學編程:零基礎學算法(第3版)》案例實用性強、結構清晰、實例代碼講解詳盡,可作為大中專院校學生學習數據結構,做課程設計的參考書,也可以作為有一定程式設計基礎的程式設計師的參考書,還可作為參加信息學奧賽選手的參考書。

圖書目錄

前言
上篇算法與數據結構基礎
第1章基礎算法思想
1.1編程的靈魂:數據結構+算法
1.2算法的作用:猜價格遊戲
1.2.1算法的作用
1.2.2實例:看商品猜價格
1.3枚舉(窮舉)算法思想
1.3.1算法思路
1.3.2實例:填數遊戲
1.3.3實例:填運算符
1.4遞推算法思想
1.4.1算法思路
1.4.2順推實例:斐波那契數列
1.4.3逆推實例:該存多少錢
1.5遞歸算法思想
1.5.1算法思路
1.5.2實例:求階乘
1.5.3實例:數制轉換
1.6分治算法思想
1.6.1算法思路
1.6.2實例:桌球比賽日程安排
1.7貪婪算法思想
1.7.1算法思路
1.7.2實例:換零錢
1.8試探法算法思想
1.8.1算法思路
1.8.2實例:生成彩票號碼組合
1.9模擬算法
1.9.1算法思路
1.9.2實例:猜數遊戲
1.9.3實例:模擬擲骰子遊戲
1.10算法的評價
1.10.1算法評價原則
1.10.2算法的效率
1.11上機實踐
第2章簡單數據結構
2.1最簡單的結構:線性表
2.1.1線性表的概念
2.1.2操作順序表
2.1.3操作鍊表
2.1.4實例:用鍊表製作通訊錄
2.2後進先出結構:棧
2.2.1棧的概念
2.2.2操作棧
2.2.3實例:算術表達式求值
2.3先進先出結構:佇列
2.3.1什麼是佇列
2.3.2操作佇列
2.3.3循環佇列的操作
2.3.4實例:銀行排號程式
2.4上機實踐
第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.1.8最優二叉樹(赫夫曼樹)
3.2網狀關係:圖
3.2.1圖的定義和基本術語
3.2.2圖的存儲
3.2.3圖的創建
3.2.4圖的遍歷
3.2.5最小生成樹
3.2.6最短路徑
3.3上機實踐
第4章常用算法——排序
4.1排序概述
4.1.1排序算法分類
4.1.2數據準備
4.2冒泡排序法
4.2.1冒泡排序法概述
4.2.2改進的冒泡排序法
4.3快速排序法
4.3.1算法描述
4.3.2算法實現
4.4簡單選擇排序法
4.5堆排序法
4.5.1算法描述
4.5.2算法實現
4.6直接插入排序法
4.6.1算法描述
4.6.2算法實現
4.7希爾(Shell)排序法
4.7.1算法描述
4.7.2算法實現
4.8合併排序法
4.8.1算法描述
4.8.2算法實現
4.9排序算法的選擇
4.9.1選擇基準
4.9.2各種排序算法的優缺點
4.10上機實踐
第5章常用算法——查找
5.1查找的基本概念
5.2簡單查找
5.2.1順序查找
5.2.2折半查找
5.3二叉排序樹
5.3.1二叉排序樹的定義
5.3.2插入節點
5.3.3查找節點
5.3.4刪除節點
5.4索引查找
5.4.1索引的概念
5.4.2索引查找算法
5.5散列表
5.5.1散列表概述
5.5.2構造散列函式
5.5.3處理衝突
5.5.4創建和查找散列表
5.6上機實踐
下篇用數據結構解決實際問題
第6章數學問題
6.1有趣的整數
6.1.1完數
6.1.2親密數
6.1.3水仙花數
6.1.4自守數
6.1.5最大公約數和最低公倍數
6.2素數
6.2.1求素數
6.2.2迴文數
6.2.3哥德巴赫猜想
6.3階乘
6.3.1用遞歸計算階乘
6.3.2大數階乘
6.4求7r的近似值
6.4.1機率法
6.4.2割圓法
6.4.3公式法
6.4.4計算任意位數的丌
6.5方程求解
6.5.1高斯消元法解線性方程組
6.5.2二分法解非線性方程
6.5.3牛頓疊代法解非線性方程
6.6矩陣的運算
6.6.1矩陣加法和乘法運算
6.6.2多維矩陣轉一維矩陣
6.6.3逆矩陣
6.6.4稀疏矩陣
6.7—元多項式的運算
6.7.1多項式加法
6.7.2多項式減法
6.8上機實踐
第7章數據結構問題
7.1約瑟夫環
7.2大整數四則運算
7.2.1使用數組進行大整數運算
7.2.2使用鍊表進行大整數運算
7.3進制轉換
7.3.1進制轉換的分析
7.3.2進制轉換實現代碼
7.4括弧匹配
7.5中序式轉後序式
7.5.1後序表達式
7.5.2算法實現
7.5.3後序表達式求值
7.6停車場管理
7.6.1問題分析
7.6.2算法實現
7.7迷宮求解
7.7.1迷宮問題
7.7.2算法實現
7.7.3求迷宮所有路徑
7.8LZW壓縮的實現
7.8.1LZW的相關概念
7.8.2LZW壓縮過程
7.8.3LZW壓縮的實現
7.8.4LZW解壓縮過程
7.8.5解壓縮函式
7.8.6集成壓縮和解壓縮功能
7.9上機實踐
第8章算法經典問題
8.1不定方程問題
8.1.1百錢買百雞
8.1.2存錢利息最大化
8.1.3求階梯數
8.1.4五家共井
8.1.5雞兔同籠
8.2推算問題
8.2.1猴子吃桃
8.2.2舍罕王的賞賜
8.3魔術方陣
8.3.1簡捷連續填數法
8.3.2雙向翻轉法
8.3.3井字調整法
8.4智力趣題
8.4.1漢諾塔
8.4.2背包問題
8.4.3馬踏棋盤
8.4.4八皇后問題
8.4.5青蛙過河
8.4.6三色旗
8.5趣味遊戲
8.5.1取石子遊戲
8.5.2生命遊戲
8.5.3洗撲克牌
8.5.4黑白棋
8.5.5湊24點遊戲
8,5.610點半遊戲
8.6上機實踐
第9章信息學奧賽試題精解
9.1NOIP普及組試題精解
9.1.1求級數之和
9.1.2求素數組合
9.1.3計算卒的路線
9.1.4檢查校驗碼
9.1.5排座位
9.1.6擊鼓傳花
9.1.7繪製模擬立體圖
9.1.8公路上的樹
9.1.9採藥
9.1.10求等價表達式
9.1.11不開心的龍龍
9.1.12孫悟空摘桃
9.1.13FBI樹
9.1.14外星人的語言
9.2NOIP提高組試題精解
9.2.1砝碼稱重
9.2.2阿明的零花錢
9.2.3購買年貨
9.2.4調整隊形
9.2.5均分紙牌
9.2.6最小矩形面積
9.2.7低價買股票
9.2.8數字金字塔
9.2.9方格取數
9.2.10飛彈防禦系統
9.3上機實踐
第10章常見面試題及解答
10.1數據結構類面試題
10.1.1選擇題
10.1.2編程題
10.2經典算法類面試題
附錄Dev—C++開發環境的使用

相關詞條

熱門詞條

聯絡我們