• 安心食材
  • 會員獨享
  • 博客來售票網
  • 今日66折
  • 天天BUY

數值分析:使用C語言(第二版)

  • 定價:580
  • 優惠價:9522
  • 本商品單次購買10本8折464
載入中...
 

內容簡介

  C語言以它的高效性和靈活性著稱,也是應用最廣泛的語言之一。工程應用中,也經常會使用C語言來編寫各種各樣的數值演算法或非數值演算法。對於應用C語言演算法的初學者和愛好者來說,一本編排簡單、容易上手的C語言數值分析手冊是學習使用C語言數值分析的必備工具。

  書中詳細講解多達166個C語言演算法,分16章介紹,涵蓋常用的C語言數值演算法和部分非數值演算法。書中所有的演算法都配有實例。同時為了突出不同演算法之間的區別,本書還將一些用法比較接近的演算法放在同一個實例中進行比較。透過分析這些實例,相信讀者可以對不同演算法的使用方法和應用範圍有更加深入的認識。

  針對工程上常用演算法而編寫的C語言數值分析程式集,不但收集傳統的演算法,也包含近年來剛出現的新演算法。希望能對C語言數值分析的愛好者和初學者有所幫助。所有的演算法程式都經過測試,並提供所有演算法的原始碼,讀者可以方便地使用書中所有演算法程式。

 

目錄

第1 章 緒論
1.1程式設計語言概述 
1.1.1 機器語言
1.1.2 組合語言 
1.1.3 高階語言
1.1.4 C 語言言
1.2 C 語言的優點和缺點
1.2.1 C 語言的優點 
1.2.2 C 語言的缺點 
1.3 演算法概述 
1.3.1 演算法的基本特徵
1.3.2 演算法的複雜度 
1.3.3 演算法的準確性 
1.3.4 演算法的穩定性

第2 章 複數運算
2.1 複數的四則運算
2.1.1 [ 演算法1] 複數乘法 
2.1.2 [ 演算法2] 複數除法 
2.1.3 【實例5】 複數的四則運算
2.2 複數的常用函數運算 
2.2.1 [ 演算法3] 複數的乘冪 
2.2.2 [ 演算法4] 複數的n 次方根
2.2.3 [ 演算法5] 複數指數 
2.2.4 [ 演算法6] 複數對數 
2.2.5 [ 演算法7] 複數正弦 
2.2.6 [ 演算法8] 複數餘弦 
2.2.7 【實例6】 複數的函數運算 

第3 章 多項式計算
3.1 多項式的表示方法 
3.1.1 係數表示法 
3.1.2  點表示法 
3.1.3  [ 演算法9] 係數表示轉化為點表示 
3.1.4  [ 演算法10] 點表示轉化為係數表示 
3.1.5  【實例7】 係數表示法與點表示法的轉化
3.2 多項式運算 
3.2.1  [ 演算法11] 複係數多項式相乘
3.2.2  [ 演算法12] 實係數多項式相乘
3.2.3  [ 演算法13] 複係數多項式相除 
3.2.4  [ 演算法14] 實係數多項式相除 
3.2.5 【實例8】 複係數多項式的乘除法
3.2.6 【實例9】 實係數多項式的乘除法
3.3 多項式的求值 
3.3.1 [ 演算法15] 一元多項式求值 
3.3.2 [ 演算法16] 一元多項式多組求值 
3.3.3 [ 演算法17] 二元多項式求值
3.3.4 【實例10】 一元多項式求值 
3.3.5 【實例11】 二元多項式求值

第4 章  矩陣計算
4.1 矩陣相乘 
4.1.1 [ 演算法18] 實矩陣相乘 
4.1.2 [ 演算法19] 複矩陣相乘 
4.1.3 【實例12】 實矩陣與複矩陣的乘法 
4.2 矩陣的秩與行列式值 
4.2.1 [ 演算法20] 求矩陣的秩
4.2.2 [ 演算法21] 求一般矩陣的行列式值
4.2.3 [ 演算法22] 求對稱正定矩陣的行列式值 
4.2.4 【實例13】 求矩陣的秩和行列式值   
4.3 求反矩陣 
4.3.1 [ 演算法23] 求一般複反矩陣 
4.3.2 [ 演算法24] 求對稱正定反矩陣 
4.3.3 [ 演算法25] 托伯利茲矩陣求反矩陣的Trent 方法
4.3.4 【實例14】 驗證求反矩陣演算法 
4.3.5 【實例15】 驗證T 矩陣的反矩陣演算法 
4.4 矩陣分解與相似變換 
4.4.1 [ 演算法26] 實對稱矩陣的LDL 分解 
4.4.2 [ 演算法27] 對稱正定實矩陣的Cholesky 分解 
4.4.3 [ 演算法28] 一般實矩陣的全選軸元LU 分解 
4.4.4 [ 演算法29] 一般實矩陣的QR 分解 
4.4.5 [ 演算法30] 對稱實矩陣相似變換為對稱三對角陣 
4.4.6 [ 演算法31] 一般實矩陣相似變換為上Hessen-Burg 矩陣 
4.4.7 【實例16】 對一般實矩陣進行QR 分解 
4.4.8 【實例17】 對稱矩陣的相似變換 
4.4.9 【實例18】 一般實矩陣相似變換 
4.5 J矩陣特徵值的計算 
4.5.1 [ 演算法32] 求上Hessen-Burg 矩陣全部特徵值的QR 方法 
4.5.2 [ 演算法33] 求對稱三對角陣的全部特徵值 
4.5.3 [ 演算法34] 求對稱矩陣特徵值的雅可比法 
4.5.4 [ 演算法35] 求對稱矩陣特徵值的雅可比過關法 
4.5.5 【實例19】 求上Hessen-Burg 矩陣特徵值 
4.5.6 【實例20】 分別用兩種雅克比法求對稱矩陣特徵值 

第5 章  線性代數方程組的求解
5.1  高斯消去法 
5.1.1 [ 演算法36] 求解複係數方程組的全選軸元高斯消去法 
5.1.2 [ 演算法37] 求解實係數方程組的全選軸元高斯消去法 
5.1.3 [ 演算法38] 求解複係數方程組的全選軸元高斯- 約當消去法
5.1.4 [ 演算法39] 求解實係數方程組的全選軸元高斯- 約當消去法
5.1.5 [ 演算法40] 求解大型稀疏係數矩陣方程組的高斯- 約當消去法 
5.1.6 [ 演算法41] 求解三對角線方程組的追趕法
5.1.7 [ 演算法42] 求解帶型方程組的方法 
5.1.8 【實例21】 解線性實係數方程組 
5.1.9 【實例22】 解線性複係數方程組 
5.1.10 【實例23】 解三對角線方程組
5.2 矩陣分解法
5.2.1 [ 演算法43] 求解對稱方程組的LDL 分解法 
5.2.2 [ 演算法44] 求解對稱正定方程組的Cholesky 分解法 
5.2.3 [ 演算法45] 求解線性最小二乘問題的QR 分解法 
5.2.4 【實例24】 求解對稱正定方程組 
5.2.5 【實例25】 求解線性最小二乘問題 
5.3 疊代方法 
5.3.1 [ 演算法46] 病態方程組的求解 
5.3.2 [ 演算法47] 雅克比疊代法 
5.3.3 [ 演算法48] 高斯- 賽德疊代法 
5.3.4 [ 演算法49] 超鬆弛方法 
5.3.5 [ 演算法50] 求解對稱正定方程組的共軛梯度方法 
5.3.6 [ 演算法51] 求解托伯利茲方程組的列文遜方法 
5.3.7 【實例26】 解病態方程組 
5.3.8 【實例27】 用疊代法解方程組 
5.3.9 【實例28】 求解托伯利茲方程組

第6 章 非線性方程與方程組的求解
6.1 非線性方程求根的基本過程
6.1.1 確定非線性方程實根的初始近似值或根的所在區間
6.1.2 求非線性方程根的精確解 . 
6.2 求非線性方程一個實根的方法 
6.2.1 [ 演算法52] 對分法 
6.2.2 [ 演算法53] 牛頓法 
6.2.3 [ 演算法54] 插值法 
6.2.4 [ 演算法55] 艾肯疊代法
6.2.5 【實例29】 用對分法求非線性方程組的實根 
6.2.6 【實例30】 用牛頓法求非線性方程組的實根
6.2.7 【實例31】 用插值法求非線性方程組的實根 
6.2.8 【實例32】 用艾肯疊代法求非線性方程組的實根
6.3 求實係數多項式方程全部根的方法 
6.3.1 [ 演算法56] QR 方法 
6.3.2 【實例33】 用QR 方法求解多項式的全部根
6.4 求非線性方程組一組實根的方法 
6.4.1 [ 演算法57] 梯度法 
6.4.2 [ 演算法58] 擬牛頓法 
6.4.3 【實例34】 用梯度法計算非線性方程組的一組實根 
6.4.4 【實例35】 用擬牛頓法計算非線性方程組的一組實根

第7 章 代數插值法
7.1 拉格朗治插值法 
7.1.1 [ 演算法59] 線性插值
7.1.2 [ 演算法60] 二次拋物線插值 
7.1.3 [ 演算法61] 全區間插值
7.1.4 【實例36】 拉格朗治插值
7.2 埃爾米特插值 
7.2.1 [ 演算法62] 埃爾米特不等距插值 
7.2.2 [ 演算法63] 埃爾米特等距插值 
7.2.3 【實例37】 埃爾米特插值法 
7.3 艾肯逐步插值 
7.3.1 [ 演算法64] 艾肯不等距插值 
7.3.2 [ 演算法65] 艾肯等距插值 
7.3.3 【實例38】 艾肯插值 
7.4 光滑插值 
7.4.1 [ 演算法66] 光滑不等距插值 
7.4.2 [ 演算法67] 光滑等距插值
7.4.3 【實例39】 光滑插值 
7.5 三次樣條插值 
7.5.1 [ 演算法68] 第一類邊界條件的三次樣條函數插值
7.5.2 [ 演算法69] 第二類邊界條件的三次樣條函數插值 
7.5.3 [ 演算法70] 第三類邊界條件的三次樣條函數插值 
7.5.4 【實例40】 樣條插值法
7.6 連分式插值 
7.6.1 [ 演算法71] 連分式插值 
7.6.2 【實例41】 驗證連分式插值的函數
 
第8 章 數值積分法
8.1 變階寬求積法
8.1.1 [ 演算法72] 變階寬梯形求積法 
8.1.2 [ 演算法73] 自適應梯形求積法 
8.1.3 [ 演算法74] 變階寬辛普生求積法 
8.1.4 [ 演算法75] 變階寬辛普生二重積分方法 
8.1.5 [ 演算法76] 龍貝格積分 
8.1.6 【實例42】 變階寬積分法進行一重積分
8.1.7 【實例43】 變階寬辛普生積分法進行二重積分 
8.2 高斯求積法 
8.2.1 [ 演算法77] 勒讓德- 高斯求積法 
8.2.2 [ 演算法78] 柴比雪夫求積法 
8.2.3 [ 演算法79] 拉蓋爾- 高斯求積法 
8.2.4 [ 演算法80] 埃爾米特- 高斯求積法 
8.2.5 [ 演算法81] 自適應高斯求積方法 
8.2.6 【實例44】 有限區間高斯求積法 
8.2.7 【實例45】 半無限區間內高斯求積法
8.2.8 【實例46】 無限區間內高斯求積法
8.3 連分式法 
8.3.1 [ 演算法82] 計算一重積分的連分式方法 
8.3.2 [ 演算法83] 計算二重積分的連分式方法 
8.3.3 【實例47】 連分式法進行一重積分 
8.3.4 【實例48】 連分式法進行二重積分
8.4 蒙特卡洛法
8.4.1 [ 演算法84] 蒙特卡洛法進行一重積分
8.4.2 [ 演算法85] 蒙特卡洛法進行二重積分 
8.4.3 【實例49】 一重積分的蒙特卡洛法 
8.4.4 【實例50】 二重積分的蒙特卡洛法 

第9 章 常微分方程(組)初值問題的求解
9.1 歐拉方法 
9.1.1 [ 演算法86] 定階寬歐拉方法 
9.1.2 [ 演算法87] 變階寬歐拉方法 
9.1.3 [ 演算法88] 改進的歐拉方法
9.1.4 【實例51】 歐拉方法求常微分方程數值解 
9.2 龍格- 庫塔方法 
9.2.1 [ 演算法89] 定階寬龍格- 庫塔方法 
9.2.2 [ 演算法90] 變階寬龍格- 庫塔方法 
9.2.3 [ 演算法91] 變階寬基爾方法 
9.2.4 【實例52】 龍格- 庫塔方法求常微分方程的初值問題
9.3 線性多步法 
9.3.1 [ 演算法92] 阿當姆斯預報校正法 
9.3.2 [ 演算法93] 哈明方法
9.3.3 [ 演算法94] 全區間積分的雙邊法 
9.3.4 【實例53】 線性多步法求常微分方程組初值問題

第10 章 擬合與近似
10.1 資源國際化簡介 
10.1 一元多項式擬合 
10.1.1 [ 演算法95] 最小二乘擬合 
10.1.2 [ 演算法96] 最佳一致近似的裡米茲方法
10.1.3 【實例54】 一元多項式擬合
10.2 矩形區域曲面擬合 
10.2.1 [ 演算法97] 矩形區域最小二乘曲面擬合 
10.2.2 【實例55】 二元多項式擬合

第11 章 特殊函數
11.1 連分式級數和指數積分 
11.1.1 [ 演算法98] 連分式級數求值
11.1.2 [ 演算法99] 指數積分 
11.1.3 【實例56】 連分式級數求值 
11.1.4 【實例57】 指數積分求值 
11. 2 伽馬函數 
11.2.1 [ 演算法100] 伽馬函數 
11.2.2 [ 演算法101] 貝塔函數 
11.2.3 [ 演算法102] 階乘 
11.2.4 【實例58】 伽馬函數和貝塔函數求值
11.2.5 【實例59】 階乘求值 
11.3 不完全伽馬函數 
11.3.1 [ 演算法103] 不完全伽馬函數 
11.3.2 [ 演算法104] 誤差函數 
11.3.3 [ 演算法105] 卡方分佈函數 
11.3.4 【實例60】 不完全伽馬函數求值 
11.3.5 【實例61】 誤差函數求值 
11.3.6 【實例62】 卡方分佈函數求值 
11.4 不完全貝塔函數 
11.4.1 [ 演算法106] 不完全貝塔函數 
11.4.2 [ 演算法107] 學生分佈函數 
11.4.3 [ 演算法108] 累積二項式分佈函數 
11.4.4 【實例63】 不完全貝塔函數求值
11.5 貝塞爾函數 
11.5.1 [ 演算法109] 第一類整數階貝塞爾函數
11.5.2 [ 演算法110] 第二類整數階貝塞爾函數
11.5.3 [ 演算法111] 變型第一類整數階貝塞爾函數 
11.5.4 [ 演算法112] 變型第二類整數階貝塞爾函數
11.5.5 【實例64】 貝塞爾函數求值 
11.5.6 【實例65】 變型貝塞爾函數求值 
11.6 Carlson 橢圓積分
11.6.1 [ 演算法113] 第一類橢圓積分
11.6.2 [ 演算法114] 第一類橢圓積分的退化形式
11.6.3 [ 演算法115] 第二類橢圓積分
11.6.4 [ 演算法116] 第三類橢圓積分
11.6.5 【實例66】 第一類勒讓德橢圓函數積分求值 
11.6.6 【實例67】 第二類勒讓德橢圓函數積分求值

第12 章 極值問題
12.1 一維極值求解方法 
12.1.1 [ 演算法117] 確定極小值點所在的區間
12.1.2 [ 演算法118] 一維黃金分割搜尋
12.1.3 [ 演算法119] 一維Brent 方法 
12.1.4 [ 演算法120] 使用一階導數的Brent 方法
12.1.5 【實例68】 使用黃金分割搜尋法求極值 
12.1.6 【實例69】 使用Brent 法求極值 
12.1.7 【實例70】 使用帶導數的Brent 法求極值
12.2 多元函數求極值 
12.2.1 [ 演算法121] 不需要導數的一維搜尋
12.2.2 [ 演算法122] 需要導數的一維搜尋 
12.2.3 [ 演算法123] Powell 方法
12.2.4 [ 演算法124] 共軛梯度法 
12.2.5 [ 演算法125] 準牛頓法
12.2.6 【實例71】 驗證不使用導數的一維搜尋 
12.2.7 【實例72】 用Powell 演算法求極值 
12.2.8 【實例73】 用共軛梯度法求極值
12.2.9 【實例74】 用準牛頓法求極值 
12.3 單純形法
12.3.1 [ 演算法126] 求無約束條件下n 維極值的單純形法 
12.3.2 [ 演算法127] 求有約束條件下n 維極值的單純形法 
12.3.3 [ 演算法128] 解線性規劃問題的單純形法
12.3.4 【實例75】 用單純形法求無約束條件下N 維的極值 
12.3.5 【實例76】 用單純形法求有約束條件下N 維的極值 
12.3.6 【實例77】 求解線性規劃問題 

第13 章  亂數產生與統計描述
13.1 均勻分佈隨機序列
13.1.1 [ 演算法129] 產生0 到1 之間均勻分佈的一個亂數
13.1.2 [ 演算法130] 產生0 到1 之間均勻分佈的亂數序列
13.1.3 [ 演算法131] 產生任意區間內均勻分佈的一個隨機整數
13.1.4 [ 演算法132] 產生任意區間內均勻分佈的隨機整數序列 
13.1.5 【實例78】 產生0 到1 之間均勻分佈的亂數序列
13.1.6 【 實例79】 產生任意區間內均勻分佈的隨機整數序列 
13.2 常態分佈隨機序列 
13.2.1 [ 演算法133] 產生任意均值與方差的常態分佈的一個亂數
13.2.2 [ 演算法134] 產生任意均值與方差的常態分佈的亂數序列 
13.2.3 【實例80】 產生任意均值與方差的常態分佈的一個亂數 
13.2.4 【實例81】 產生任意均值與方差的常態分佈的亂數序列
13.3 統計描述
13.3.1 [ 演算法135] 分佈的矩 
13.3.2 [ 演算法136] 方差相同時的t 分佈檢驗 
13.3.3 [ 演算法137] 方差不同時的t 分佈檢驗 
13.3.4 [ 演算法138] 方差的F 檢驗 
13.3.5 [ 演算法139] 卡方檢驗
13.3.6 【 實例82】 計算隨機樣本的矩
13.3.7 【 實例83】 t 分佈檢驗
13.3.8 【 實例84】 F 分佈檢驗
13.3.9 【 實例85】 檢驗卡方檢驗的演算法

第14 章 搜尋
14.1 基本搜尋 
14.1.1 [ 演算法140] 有序數組的二分搜尋
14.1.2 [ 演算法141] 無序數組同時搜尋最大和最小的元素
14.1.3 [ 演算法142] 無序數組搜尋第M 小的元素
14.1.4 【實例86】 基本搜尋 
14.2 結構體和電子檔的搜尋
14.2.1 [ 演算法143] 無序結構體陣列的順序搜尋
14.2.2 [ 演算法144] 電子檔中記錄的順序搜尋 
14.2.3 【實例87】 結構體陣列和檔中的搜尋 
14.3 雜湊搜尋 
14.3.1 [ 演算法145] 字串雜湊函數
14.3.2 [ 演算法146] 雜湊函數
14.3.3 [ 演算法147] 向雜湊表中插入元素 
14.3.4 [ 演算法148] 在雜湊表中搜尋元素
14.3.5 [ 演算法149] 在雜湊表中刪除元素
14.3.6 【實例88】 構造雜湊表並進行搜尋

第15 章 排序
15.1 插入排序 
15.1.1 [ 演算法150] 直接插入排序 
15.1.2 [ 演算法151] 希爾排序 
15.1.3 【實例89】 插入排序
15.2 交換排序
15.2.1 [ 演算法152] 氣泡排序
15.2.2 [ 演算法153] 快速排序
15.2.3 【實例90】 交換排序
15.3 選擇排序 
15.3.1 [ 演算法154] 直接選擇排序
15.3.2 [ 演算法155] 堆積排序 
15.3.3 【實例91】 選擇排序
15.4 線性時間排序 
15.4.1 [ 演算法156] 計數排序
15.4.2 [ 演算法157] 基數排序 
15.4.3 【實例92】 線性時間排序 
15.5 合併排序 
15.5.1 [ 演算法158] 二路合併排序
15.5.2 【實例93】 二路合併排序

第16 章 數學變換與濾波
16.1 快速傅立葉變換
16.1.1 [ 演算法159] 複數資料快速傅立葉變換 
16.1.2 [ 演算法160] 複數資料快速傅立葉逆變換 
16.1.3 [ 演算法161] 實數資料快速傅立葉變換 
16.1.4 【實例94】 驗證傅立葉變換的函數
16.2 其他常用變換 
16.2.1 [ 演算法162] 快速沃爾什變換 
16.2.2 [ 演算法163] 快速阿達瑪變換 
16.2.3 [ 演算法164] 快速餘弦變換
16.2.4 【實例95】 驗證沃爾什變換和阿達瑪的函數 
16.2.5 【實例96】 驗證離散餘弦變換的函數 
16.3 平滑和濾波 
16.3.1 [ 演算法165] 五點三次平滑
16.3.2 [ 演算法166] α-β-γ 濾波 
16.3.3 【實例97】 驗證五點三次平滑 
16.3.4 【實例98】 驗證α-β-γ 濾波演算法

 

詳細資料

  • ISBN:9789865836108
  • 規格:平裝 / 656頁 / 17 x 23 cm / 普通級 / 單色印刷 / 二版
  • 出版地:台灣

最近瀏覽商品

 
 

購物說明

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則 

  • 圓神
  • 時報

買了此商品的人,也買了...

訂閱電子報

想獲得最新商品資訊,請訂閱免費電子報