C++作為具體的實(shí)現(xiàn)語(yǔ)言。書(shū)的內(nèi)容包括表、棧、隊(duì)列、樹(shù)、散列表、優(yōu)先隊(duì)列、排序、不相交集算法、圖論算法、算法分析、算法設(shè)計(jì)、攤還分析、查找樹(shù)算法、k-d樹(shù)和配對(duì)堆等。
標(biāo)簽: c++編程教程
上傳時(shí)間: 2015-06-14
上傳用戶:plancking
第1章 緒論 1 1.1 程序設(shè)計(jì)語(yǔ)言概述 1 1.1.1 機(jī)器語(yǔ)言 1 1.1.2 匯編語(yǔ)言 2 1.1.3 高級(jí)語(yǔ)言 2 1.1.4 C語(yǔ)言 3 1.2 C語(yǔ)言的優(yōu)點(diǎn)和缺點(diǎn) 4 1.2.1 C語(yǔ)言的優(yōu)點(diǎn) 4 1.2.2 C語(yǔ)言的缺點(diǎn) 6 1.3 算法概述 7 1.3.1 算法的基本特征 7 1.3.2 算法的復(fù)雜度 8 1.3.3 算法的準(zhǔn)確性 10 1.3.4 算法的穩(wěn)定性 14 第2章 復(fù)數(shù)運(yùn)算 18 2.1 復(fù)數(shù)的四則運(yùn)算 18 2.1.1 [算法1] 復(fù)數(shù)乘法 18 2.1.2 [算法2] 復(fù)數(shù)除法 20 2.1.3 【實(shí)例5】 復(fù)數(shù)的四則運(yùn)算 22 2.2 復(fù)數(shù)的常用函數(shù)運(yùn)算 23 2.2.1 [算法3] 復(fù)數(shù)的乘冪 23 2.2.2 [算法4] 復(fù)數(shù)的n次方根 25 2.2.3 [算法5] 復(fù)數(shù)指數(shù) 27 2.2.4 [算法6] 復(fù)數(shù)對(duì)數(shù) 29 2.2.5 [算法7] 復(fù)數(shù)正弦 30 2.2.6 [算法8] 復(fù)數(shù)余弦 32 2.2.7 【實(shí)例6】 復(fù)數(shù)的函數(shù)運(yùn)算 34 第3章 多項(xiàng)式計(jì)算 37 3.1 多項(xiàng)式的表示方法 37 3.1.1 系數(shù)表示法 37 3.1.2 點(diǎn)表示法 38 3.1.3 [算法9] 系數(shù)表示轉(zhuǎn)化為點(diǎn)表示 38 3.1.4 [算法10] 點(diǎn)表示轉(zhuǎn)化為系數(shù)表示 42 3.1.5 【實(shí)例7】 系數(shù)表示法與點(diǎn)表示法的轉(zhuǎn)化 46 3.2 多項(xiàng)式運(yùn)算 47 3.2.1 [算法11] 復(fù)系數(shù)多項(xiàng)式相乘 47 3.2.2 [算法12] 實(shí)系數(shù)多項(xiàng)式相乘 50 3.2.3 [算法13] 復(fù)系數(shù)多項(xiàng)式相除 52 3.2.4 [算法14] 實(shí)系數(shù)多項(xiàng)式相除 54 3.2.5 【實(shí)例8】 復(fù)系數(shù)多項(xiàng)式的乘除法 56 3.2.6 【實(shí)例9】 實(shí)系數(shù)多項(xiàng)式的乘除法 57 3.3 多項(xiàng)式的求值 59 3.3.1 [算法15] 一元多項(xiàng)式求值 59 3.3.2 [算法16] 一元多項(xiàng)式多組求值 60 3.3.3 [算法17] 二元多項(xiàng)式求值 63 3.3.4 【實(shí)例10】 一元多項(xiàng)式求值 65 3.3.5 【實(shí)例11】 二元多項(xiàng)式求值 66 第4章 矩陣計(jì)算 68 4.1 矩陣相乘 68 4.1.1 [算法18] 實(shí)矩陣相乘 68 4.1.2 [算法19] 復(fù)矩陣相乘 70 4.1.3 【實(shí)例12】 實(shí)矩陣與復(fù)矩陣的乘法 72 4.2 矩陣的秩與行列式值 73 4.2.1 [算法20] 求矩陣的秩 73 4.2.2 [算法21] 求一般矩陣的行列式值 76 4.2.3 [算法22] 求對(duì)稱正定矩陣的行列式值 80 4.2.4 【實(shí)例13】 求矩陣的秩和行列式值 82 4.3 矩陣求逆 84 4.3.1 [算法23] 求一般復(fù)矩陣的逆 84 4.3.2 [算法24] 求對(duì)稱正定矩陣的逆 90 4.3.3 [算法25] 求托伯利茲矩陣逆的Trench方法 92 4.3.4 【實(shí)例14】 驗(yàn)證矩陣求逆算法 97 4.3.5 【實(shí)例15】 驗(yàn)證T矩陣求逆算法 99 4.4 矩陣分解與相似變換 102 4.4.1 [算法26] 實(shí)對(duì)稱矩陣的LDL分解 102 4.4.2 [算法27] 對(duì)稱正定實(shí)矩陣的Cholesky分解 104 4.4.3 [算法28] 一般實(shí)矩陣的全選主元LU分解 107 4.4.4 [算法29] 一般實(shí)矩陣的QR分解 112 4.4.5 [算法30] 對(duì)稱實(shí)矩陣相似變換為對(duì)稱三對(duì)角陣 116 4.4.6 [算法31] 一般實(shí)矩陣相似變換為上Hessen-Burg矩陣 121 4.4.7 【實(shí)例16】 對(duì)一般實(shí)矩陣進(jìn)行QR分解 126 4.4.8 【實(shí)例17】 對(duì)稱矩陣的相似變換 127 4.4.9 【實(shí)例18】 一般實(shí)矩陣相似變換 129 4.5 矩陣特征值的計(jì)算 130 4.5.1 [算法32] 求上Hessen-Burg矩陣全部特征值的QR方法 130 4.5.2 [算法33] 求對(duì)稱三對(duì)角陣的全部特征值 137 4.5.3 [算法34] 求對(duì)稱矩陣特征值的雅可比法 143 4.5.4 [算法35] 求對(duì)稱矩陣特征值的雅可比過(guò)關(guān)法 147 4.5.5 【實(shí)例19】 求上Hessen-Burg矩陣特征值 151 4.5.6 【實(shí)例20】 分別用兩種雅克比法求對(duì)稱矩陣特征值 152 第5章 線性代數(shù)方程組的求解 154 5.1 高斯消去法 154 5.1.1 [算法36] 求解復(fù)系數(shù)方程組的全選主元高斯消去法 155 5.1.2 [算法37] 求解實(shí)系數(shù)方程組的全選主元高斯消去法 160 5.1.3 [算法38] 求解復(fù)系數(shù)方程組的全選主元高斯-約當(dāng)消去法 163 5.1.4 [算法39] 求解實(shí)系數(shù)方程組的全選主元高斯-約當(dāng)消去法 168 5.1.5 [算法40] 求解大型稀疏系數(shù)矩陣方程組的高斯-約當(dāng)消去法 171 5.1.6 [算法41] 求解三對(duì)角線方程組的追趕法 174 5.1.7 [算法42] 求解帶型方程組的方法 176 5.1.8 【實(shí)例21】 解線性實(shí)系數(shù)方程組 179 5.1.9 【實(shí)例22】 解線性復(fù)系數(shù)方程組 180 5.1.10 【實(shí)例23】 解三對(duì)角線方程組 182 5.2 矩陣分解法 184 5.2.1 [算法43] 求解對(duì)稱方程組的LDL分解法 184 5.2.2 [算法44] 求解對(duì)稱正定方程組的Cholesky分解法 186 5.2.3 [算法45] 求解線性最小二乘問(wèn)題的QR分解法 188 5.2.4 【實(shí)例24】 求解對(duì)稱正定方程組 191 5.2.5 【實(shí)例25】 求解線性最小二乘問(wèn)題 192 5.3 迭代方法 193 5.3.1 [算法46] 病態(tài)方程組的求解 193 5.3.2 [算法47] 雅克比迭代法 197 5.3.3 [算法48] 高斯-塞德?tīng)柕ā?00 5.3.4 [算法49] 超松弛方法 203 5.3.5 [算法50] 求解對(duì)稱正定方程組的共軛梯度方法 205 5.3.6 [算法51] 求解托伯利茲方程組的列文遜方法 209 5.3.7 【實(shí)例26】 解病態(tài)方程組 214 5.3.8 【實(shí)例27】 用迭代法解方程組 215 5.3.9 【實(shí)例28】 求解托伯利茲方程組 217 第6章 非線性方程與方程組的求解 219 6.1 非線性方程求根的基本過(guò)程 219 6.1.1 確定非線性方程實(shí)根的初始近似值或根的所在區(qū)間 219 6.1.2 求非線性方程根的精確解 221 6.2 求非線性方程一個(gè)實(shí)根的方法 221 6.2.1 [算法52] 對(duì)分法 221 6.2.2 [算法53] 牛頓法 223 6.2.3 [算法54] 插值法 226 6.2.4 [算法55] 埃特金迭代法 229 6.2.5 【實(shí)例29】 用對(duì)分法求非線性方程組的實(shí)根 232 6.2.6 【實(shí)例30】 用牛頓法求非線性方程組的實(shí)根 233 6.2.7 【實(shí)例31】 用插值法求非線性方程組的實(shí)根 235 6.2.8 【實(shí)例32】 用埃特金迭代法求非線性方程組的實(shí)根 237 6.3 求實(shí)系數(shù)多項(xiàng)式方程全部根的方法 238 6.3.1 [算法56] QR方法 238 6.3.2 【實(shí)例33】 用QR方法求解多項(xiàng)式的全部根 240 6.4 求非線性方程組一組實(shí)根的方法 241 6.4.1 [算法57] 梯度法 241 6.4.2 [算法58] 擬牛頓法 244 6.4.3 【實(shí)例34】 用梯度法計(jì)算非線性方程組的一組實(shí)根 250 6.4.4 【實(shí)例35】 用擬牛頓法計(jì)算非線性方程組的一組實(shí)根 252 第7章 代數(shù)插值法 254 7.1 拉格朗日插值法 254 7.1.1 [算法59] 線性插值 255 7.1.2 [算法60] 二次拋物線插值 256 7.1.3 [算法61] 全區(qū)間插值 259 7.1.4 【實(shí)例36】 拉格朗日插值 262 7.2 埃爾米特插值 263 7.2.1 [算法62] 埃爾米特不等距插值 263 7.2.2 [算法63] 埃爾米特等距插值 267 7.2.3 【實(shí)例37】 埃爾米特插值法 270 7.3 埃特金逐步插值 271 7.3.1 [算法64] 埃特金不等距插值 272 7.3.2 [算法65] 埃特金等距插值 275 7.3.3 【實(shí)例38】 埃特金插值 278 7.4 光滑插值 279 7.4.1 [算法66] 光滑不等距插值 279 7.4.2 [算法67] 光滑等距插值 283 7.4.3 【實(shí)例39】 光滑插值 286 7.5 三次樣條插值 287 7.5.1 [算法68] 第一類邊界條件的三次樣條函數(shù)插值 287 7.5.2 [算法69] 第二類邊界條件的三次樣條函數(shù)插值 292 7.5.3 [算法70] 第三類邊界條件的三次樣條函數(shù)插值 296 7.5.4 【實(shí)例40】 樣條插值法 301 7.6 連分式插值 303 7.6.1 [算法71] 連分式插值 304 7.6.2 【實(shí)例41】 驗(yàn)證連分式插值的函數(shù) 308 第8章 數(shù)值積分法 309 8.1 變步長(zhǎng)求積法 310 8.1.1 [算法72] 變步長(zhǎng)梯形求積法 310 8.1.2 [算法73] 自適應(yīng)梯形求積法 313 8.1.3 [算法74] 變步長(zhǎng)辛卜生求積法 316 8.1.4 [算法75] 變步長(zhǎng)辛卜生二重積分方法 318 8.1.5 [算法76] 龍貝格積分 322 8.1.6 【實(shí)例42】 變步長(zhǎng)積分法進(jìn)行一重積分 325 8.1.7 【實(shí)例43】 變步長(zhǎng)辛卜生積分法進(jìn)行二重積分 326 8.2 高斯求積法 328 8.2.1 [算法77] 勒讓德-高斯求積法 328 8.2.2 [算法78] 切比雪夫求積法 331 8.2.3 [算法79] 拉蓋爾-高斯求積法 334 8.2.4 [算法80] 埃爾米特-高斯求積法 336 8.2.5 [算法81] 自適應(yīng)高斯求積方法 337 8.2.6 【實(shí)例44】 有限區(qū)間高斯求積法 342 8.2.7 【實(shí)例45】 半無(wú)限區(qū)間內(nèi)高斯求積法 343 8.2.8 【實(shí)例46】 無(wú)限區(qū)間內(nèi)高斯求積法 345 8.3 連分式法 346 8.3.1 [算法82] 計(jì)算一重積分的連分式方法 346 8.3.2 [算法83] 計(jì)算二重積分的連分式方法 350 8.3.3 【實(shí)例47】 連分式法進(jìn)行一重積分 354 8.3.4 【實(shí)例48】 連分式法進(jìn)行二重積分 355 8.4 蒙特卡洛法 356 8.4.1 [算法84] 蒙特卡洛法進(jìn)行一重積分 356 8.4.2 [算法85] 蒙特卡洛法進(jìn)行二重積分 358 8.4.3 【實(shí)例49】 一重積分的蒙特卡洛法 360 8.4.4 【實(shí)例50】 二重積分的蒙特卡洛法 361 第9章 常微分方程(組)初值問(wèn)題的求解 363 9.1 歐拉方法 364 9.1.1 [算法86] 定步長(zhǎng)歐拉方法 364 9.1.2 [算法87] 變步長(zhǎng)歐拉方法 366 9.1.3 [算法88] 改進(jìn)的歐拉方法 370 9.1.4 【實(shí)例51】 歐拉方法求常微分方程數(shù)值解 372 9.2 龍格-庫(kù)塔方法 376 9.2.1 [算法89] 定步長(zhǎng)龍格-庫(kù)塔方法 376 9.2.2 [算法90] 變步長(zhǎng)龍格-庫(kù)塔方法 379 9.2.3 [算法91] 變步長(zhǎng)基爾方法 383 9.2.4 【實(shí)例52】 龍格-庫(kù)塔方法求常微分方程的初值問(wèn)題 386 9.3 線性多步法 390 9.3.1 [算法92] 阿當(dāng)姆斯預(yù)報(bào)校正法 390 9.3.2 [算法93] 哈明方法 394 9.3.3 [算法94] 全區(qū)間積分的雙邊法 399 9.3.4 【實(shí)例53】 線性多步法求常微分方程組初值問(wèn)題 401 第10章 擬合與逼近 405 10.1 一元多項(xiàng)式擬合 405 10.1.1 [算法95] 最小二乘擬合 405 10.1.2 [算法96] 最佳一致逼近的里米茲方法 412 10.1.3 【實(shí)例54】 一元多項(xiàng)式擬合 417 10.2 矩形區(qū)域曲面擬合 419 10.2.1 [算法97] 矩形區(qū)域最小二乘曲面擬合 419 10.2.2 【實(shí)例55】 二元多項(xiàng)式擬合 428 第11章 特殊函數(shù) 430 11.1 連分式級(jí)數(shù)和指數(shù)積分 430 11.1.1 [算法98] 連分式級(jí)數(shù)求值 430 11.1.2 [算法99] 指數(shù)積分 433 11.1.3 【實(shí)例56】 連分式級(jí)數(shù)求值 436 11.1.4 【實(shí)例57】 指數(shù)積分求值 438 11.2 伽馬函數(shù) 439 11.2.1 [算法100] 伽馬函數(shù) 439 11.2.2 [算法101] 貝塔函數(shù) 441 11.2.3 [算法102] 階乘 442 11.2.4 【實(shí)例58】 伽馬函數(shù)和貝塔函數(shù)求值 443 11.2.5 【實(shí)例59】 階乘求值 444 11.3 不完全伽馬函數(shù) 445 11.3.1 [算法103] 不完全伽馬函數(shù) 445 11.3.2 [算法104] 誤差函數(shù) 448 11.3.3 [算法105] 卡方分布函數(shù) 450 11.3.4 【實(shí)例60】 不完全伽馬函數(shù)求值 451 11.3.5 【實(shí)例61】 誤差函數(shù)求值 452 11.3.6 【實(shí)例62】 卡方分布函數(shù)求值 453 11.4 不完全貝塔函數(shù) 454 11.4.1 [算法106] 不完全貝塔函數(shù) 454 11.4.2 [算法107] 學(xué)生分布函數(shù) 457 11.4.3 [算法108] 累積二項(xiàng)式分布函數(shù) 458 11.4.4 【實(shí)例63】 不完全貝塔函數(shù)求值 459 11.5 貝塞爾函數(shù) 461 11.5.1 [算法109] 第一類整數(shù)階貝塞爾函數(shù) 461 11.5.2 [算法110] 第二類整數(shù)階貝塞爾函數(shù) 466 11.5.3 [算法111] 變型第一類整數(shù)階貝塞爾函數(shù) 469 11.5.4 [算法112] 變型第二類整數(shù)階貝塞爾函數(shù) 473 11.5.5 【實(shí)例64】 貝塞爾函數(shù)求值 476 11.5.6 【實(shí)例65】 變型貝塞爾函數(shù)求值 477 11.6 Carlson橢圓積分 479 11.6.1 [算法113] 第一類橢圓積分 479 11.6.2 [算法114] 第一類橢圓積分的退化形式 481 11.6.3 [算法115] 第二類橢圓積分 483 11.6.4 [算法116] 第三類橢圓積分 486 11.6.5 【實(shí)例66】 第一類勒讓德橢圓函數(shù)積分求值 490 11.6.6 【實(shí)例67】 第二類勒讓德橢圓函數(shù)積分求值 492 第12章 極值問(wèn)題 494 12.1 一維極值求解方法 494 12.1.1 [算法117] 確定極小值點(diǎn)所在的區(qū)間 494 12.1.2 [算法118] 一維黃金分割搜索 499 12.1.3 [算法119] 一維Brent方法 502 12.1.4 [算法120] 使用一階導(dǎo)數(shù)的Brent方法 506 12.1.5 【實(shí)例68】 使用黃金分割搜索法求極值 511 12.1.6 【實(shí)例69】 使用Brent法求極值 513 12.1.7 【實(shí)例70】 使用帶導(dǎo)數(shù)的Brent法求極值 515 12.2 多元函數(shù)求極值 517 12.2.1 [算法121] 不需要導(dǎo)數(shù)的一維搜索 517 12.2.2 [算法122] 需要導(dǎo)數(shù)的一維搜索 519 12.2.3 [算法123] Powell方法 522 12.2.4 [算法124] 共軛梯度法 525 12.2.5 [算法125] 準(zhǔn)牛頓法 531 12.2.6 【實(shí)例71】 驗(yàn)證不使用導(dǎo)數(shù)的一維搜索 536 12.2.7 【實(shí)例72】 用Powell算法求極值 537 12.2.8 【實(shí)例73】 用共軛梯度法求極值 539 12.2.9 【實(shí)例74】 用準(zhǔn)牛頓法求極值 540 12.3 單純形法 542 12.3.1 [算法126] 求無(wú)約束條件下n維極值的單純形法 542 12.3.2 [算法127] 求有約束條件下n維極值的單純形法 548 12.3.3 [算法128] 解線性規(guī)劃問(wèn)題的單純形法 556 12.3.4 【實(shí)例75】 用單純形法求無(wú)約束條件下N維的極值 568 12.3.5 【實(shí)例76】 用單純形法求有約束條件下N維的極值 569 12.3.6 【實(shí)例77】 求解線性規(guī)劃問(wèn)題 571 第13章 隨機(jī)數(shù)產(chǎn)生與統(tǒng)計(jì)描述 574 13.1 均勻分布隨機(jī)序列 574 13.1.1 [算法129] 產(chǎn)生0到1之間均勻分布的一個(gè)隨機(jī)數(shù) 574 13.1.2 [算法130] 產(chǎn)生0到1之間均勻分布的隨機(jī)數(shù)序列 576 13.1.3 [算法131] 產(chǎn)生任意區(qū)間內(nèi)均勻分布的一個(gè)隨機(jī)整數(shù) 577 13.1.4 [算法132] 產(chǎn)生任意區(qū)間內(nèi)均勻分布的隨機(jī)整數(shù)序列 578 13.1.5 【實(shí)例78】 產(chǎn)生0到1之間均勻分布的隨機(jī)數(shù)序列 580 13.1.6 【實(shí)例79】 產(chǎn)生任意區(qū)間內(nèi)均勻分布的隨機(jī)整數(shù)序列 581 13.2 正態(tài)分布隨機(jī)序列 582 13.2.1 [算法133] 產(chǎn)生任意均值與方差的正態(tài)分布的一個(gè)隨機(jī)數(shù) 582 13.2.2 [算法134] 產(chǎn)生任意均值與方差的正態(tài)分布的隨機(jī)數(shù)序列 585 13.2.3 【實(shí)例80】 產(chǎn)生任意均值與方差的正態(tài)分布的一個(gè)隨機(jī)數(shù) 587 13.2.4 【實(shí)例81】 產(chǎn)生任意均值與方差的正態(tài)分布的隨機(jī)數(shù)序列 588 13.3 統(tǒng)計(jì)描述 589 13.3.1 [算法135] 分布的矩 589 13.3.2 [算法136] 方差相同時(shí)的t分布檢驗(yàn) 591 13.3.3 [算法137] 方差不同時(shí)的t分布檢驗(yàn) 594 13.3.4 [算法138] 方差的F檢驗(yàn) 596 13.3.5 [算法139] 卡方檢驗(yàn) 599 13.3.6 【實(shí)例82】 計(jì)算隨機(jī)樣本的矩 601 13.3.7 【實(shí)例83】 t分布檢驗(yàn) 602 13.3.8 【實(shí)例84】 F分布檢驗(yàn) 605 13.3.9 【實(shí)例85】 檢驗(yàn)卡方檢驗(yàn)的算法 607 第14章 查找 609 14.1 基本查找 609 14.1.1 [算法140] 有序數(shù)組的二分查找 609 14.1.2 [算法141] 無(wú)序數(shù)組同時(shí)查找最大和最小的元素 611 14.1.3 [算法142] 無(wú)序數(shù)組查找第M小的元素 613 14.1.4 【實(shí)例86】 基本查找 615 14.2 結(jié)構(gòu)體和磁盤(pán)文件的查找 617 14.2.1 [算法143] 無(wú)序結(jié)構(gòu)體數(shù)組的順序查找 617 14.2.2 [算法144] 磁盤(pán)文件中記錄的順序查找 618 14.2.3 【實(shí)例87】 結(jié)構(gòu)體數(shù)組和文件中的查找 619 14.3 哈希查找 622 14.3.1 [算法145] 字符串哈希函數(shù) 622 14.3.2 [算法146] 哈希函數(shù) 626 14.3.3 [算法147] 向哈希表中插入元素 628 14.3.4 [算法148] 在哈希表中查找元素 629 14.3.5 [算法149] 在哈希表中刪除元素 631 14.3.6 【實(shí)例88】 構(gòu)造哈希表并進(jìn)行查找 632 第15章 排序 636 15.1 插入排序 636 15.1.1 [算法150] 直接插入排序 636 15.1.2 [算法151] 希爾排序 637 15.1.3 【實(shí)例89】 插入排序 639 15.2 交換排序 641 15.2.1 [算法152] 氣泡排序 641 15.2.2 [算法153] 快速排序 642 15.2.3 【實(shí)例90】 交換排序 644 15.3 選擇排序 646 15.3.1 [算法154] 直接選擇排序 646 15.3.2 [算法155] 堆排序 647 15.3.3 【實(shí)例91】 選擇排序 650 15.4 線性時(shí)間排序 651 15.4.1 [算法156] 計(jì)數(shù)排序 651 15.4.2 [算法157] 基數(shù)排序 653 15.4.3 【實(shí)例92】 線性時(shí)間排序 656 15.5 歸并排序 657 15.5.1 [算法158] 二路歸并排序 658 15.5.2 【實(shí)例93】 二路歸并排序 660 第16章 數(shù)學(xué)變換與濾波 662 16.1 快速傅里葉變換 662 16.1.1 [算法159] 復(fù)數(shù)據(jù)快速傅里葉變換 662 16.1.2 [算法160] 復(fù)數(shù)據(jù)快速傅里葉逆變換 666 16.1.3 [算法161] 實(shí)數(shù)據(jù)快速傅里葉變換 669 16.1.4 【實(shí)例94】 驗(yàn)證傅里葉變換的函數(shù) 671 16.2 其他常用變換 674 16.2.1 [算法162] 快速沃爾什變換 674 16.2.2 [算法163] 快速哈達(dá)瑪變換 678 16.2.3 [算法164] 快速余弦變換 682 16.2.4 【實(shí)例95】 驗(yàn)證沃爾什變換和哈達(dá)瑪?shù)暮瘮?shù) 684 16.2.5 【實(shí)例96】 驗(yàn)證離散余弦變換的函數(shù) 687 16.3 平滑和濾波 688 16.3.1 [算法165] 五點(diǎn)三次平滑 689 16.3.2 [算法166] α-β-γ濾波 690 16.3.3 【實(shí)例97】 驗(yàn)證五點(diǎn)三次平滑 692 16.3.4 【實(shí)例98】 驗(yàn)證α-β-γ濾波算法 693
標(biāo)簽: C 算法 附件 源代碼
上傳時(shí)間: 2015-06-29
上傳用戶:cbsdukaf
我們編寫(xiě)的程序由兩個(gè)主要方面組成 1 算法的集合就是將指令組織成程序來(lái)解決某個(gè)特定的問(wèn)題 2 數(shù)據(jù)的集合算法在這些數(shù)據(jù)上操作以提供問(wèn)題的解決方案 縱觀短暫的計(jì)算機(jī)發(fā)展史這兩個(gè)主要方面算法和數(shù)據(jù)一直保持不變發(fā)展演化的 是它們之間的關(guān)系就是所謂的程序設(shè)計(jì)方法programming paradigm 在過(guò)程化程序設(shè)計(jì)方法procedural programming 中一個(gè)問(wèn)題可直接由一組算法來(lái)建 立模型例如公共圖書(shū)館的資料借閱/登記check out/check in 系統(tǒng)是由一系列過(guò)程表現(xiàn) 出來(lái)的其中兩個(gè)主要的過(guò)程是資料的借閱和登記這些數(shù)據(jù)被獨(dú)立存儲(chǔ)起來(lái)我們既可以 在某個(gè)全局位置上訪問(wèn)這些數(shù)據(jù)或者把數(shù)據(jù)傳遞給過(guò)程以便它能夠訪問(wèn)這些數(shù)據(jù)Fortran C 和 Pascal 是三種著名的過(guò)程語(yǔ)言C++也支持過(guò)程化程序設(shè)計(jì)單獨(dú)的過(guò)程如check_in() check_out() over_due() fine()等等都被稱為函數(shù)第三篇將集中討論C++對(duì)過(guò)程化程序 設(shè)計(jì)方法的支持尤其將重點(diǎn)討論函數(shù)函數(shù)模板和通用算法 在20 世紀(jì)70 年代程序設(shè)計(jì)的焦點(diǎn)從過(guò)程化程序設(shè)計(jì)方法轉(zhuǎn)移到了抽象數(shù)據(jù)類型 abstract data type 簡(jiǎn)寫(xiě)為ADT 的程序設(shè)計(jì)上現(xiàn)在通常稱之為基于對(duì)象(object based 的程序設(shè)計(jì)在基于對(duì)象的程序設(shè)計(jì)方法中我們通過(guò)一組數(shù)據(jù)抽象來(lái)建立問(wèn)題的模型在 C++中我們把這些抽象稱為類class 例如在這種方法下圖書(shū)館資料借閱登記系統(tǒng)就 由類的對(duì)象實(shí)例比如書(shū)借閱者還書(shū)時(shí)間罰款等之間的相互作用表現(xiàn)出來(lái)以此表 示出圖書(shū)館的抽象概念與每個(gè)類相關(guān)的算法被稱為該類的公有接口public interface 數(shù) 據(jù)以私有形式被存儲(chǔ)在每個(gè)對(duì)象中對(duì)數(shù)據(jù)的訪問(wèn)應(yīng)與一般的程序代碼隔離開(kāi)來(lái)CLU Ada 和Modula-2 是三種支持抽象數(shù)據(jù)類型的程序設(shè)計(jì)語(yǔ)言第四篇將說(shuō)明和討論C++對(duì)抽象數(shù)據(jù) 類型程序設(shè)計(jì)方法的支持 面向?qū)ο蟮某绦蛟O(shè)計(jì)方法通過(guò)繼承inheritance 機(jī)制和動(dòng)態(tài)綁定dynamic binding 機(jī) 制擴(kuò)展了抽象數(shù)據(jù)類型繼承機(jī)制是對(duì)現(xiàn)有實(shí)現(xiàn)代碼的重用動(dòng)態(tài)綁定是指對(duì)現(xiàn)有的公有接 口的重用以前獨(dú)立的類型現(xiàn)在有了類型/子類型的特定關(guān)系一本書(shū)一盒錄像帶一段錄 音甚至孩子的寵物盡管它們有各自的借閱/登記方式但都可以成為圖書(shū)館的收藏資料 共享的公有接口和私有的數(shù)據(jù)都放在一個(gè)抽象類圖書(shū)館資料LibraryMaterial 中每個(gè)特 殊的圖書(shū)館資料類都從LibraryMaterial 抽象類繼承共享的行為它們只需要提供與自身行為相 關(guān)的算法和數(shù)據(jù)Simula Smalltalk 和Java 是三種支持面向?qū)ο蟪绦蛟O(shè)計(jì)方法的著名語(yǔ)言 第五篇將集中討論C++對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)方法的支持 C++是一種支持多種程序設(shè)計(jì)方法的語(yǔ)言雖然我們主要把它當(dāng)作面向?qū)ο蟮恼Z(yǔ)言但 實(shí)際上它也提供對(duì)過(guò)程化的和基于對(duì)象的程序設(shè)計(jì)方法的支持這樣做的好處是對(duì)每個(gè)問(wèn)題 都能夠提供最合適的解決方案事實(shí)上沒(méi)有一種程序設(shè)計(jì)方法能夠
標(biāo)簽: c++從入門到精通.pdf電子書(shū) 第二版
上傳時(shí)間: 2019-01-30
上傳用戶:jizhi111
IC-Ucc28950改進(jìn)的相移全橋控制設(shè)計(jì)UcC28950是T公司進(jìn)一步改進(jìn)的相移全橋控制C,它比原有標(biāo)準(zhǔn)型UCC2895主要改進(jìn)為Zvs能力范圍加寬,對(duì)二次側(cè)同步整流直接控制,提高了輕載空載轉(zhuǎn)換效率,而且此時(shí)可以O(shè)N/OFF控制同步整流成為綠色產(chǎn)品。既可以作電流型控制,也可以作電壓型控制。增加了閉環(huán)軟啟動(dòng)及使能功能。低啟動(dòng)電流,逐個(gè)周期式限流過(guò)流保護(hù),開(kāi)關(guān)頻率可達(dá)1MHz UCC28950基本應(yīng)用電路如圖1所示,內(nèi)部等效方框電路如圖2所示。*啟動(dòng)中的保護(hù)邏輯UCC28950啟動(dòng)前應(yīng)該首先滿足下列條件:*VDD電壓要超過(guò)UvLo閾值,73V*5V基準(zhǔn)電壓已經(jīng)實(shí)現(xiàn)*芯片結(jié)溫低于140℃。*軟啟動(dòng)電容上的電壓不低于0.55V。如果滿足上述條件,一個(gè)內(nèi)部使能信號(hào)EN將產(chǎn)生出來(lái),開(kāi)始軟啟動(dòng)過(guò)程。軟啟動(dòng)期間的占空比,由Ss端電壓定義,且不會(huì)低于由Twm設(shè)置的占空比,或由逐個(gè)周期電流限制電路決定的負(fù)載條件電壓基準(zhǔn)精確的(±1.5%5V基準(zhǔn)電壓,具有短路保護(hù),支持內(nèi)部電路,并能提供20mA外部輸出電流,其用于設(shè)置DCDC變換器參數(shù),放置一個(gè)低ESR,ESL瓷介電容(1uF-2.2uF旁路去耦,從此端接到GND,并緊靠端子,以獲得最佳性能。唯一的關(guān)斷特性發(fā)生在C的VDD進(jìn)入U(xiǎn)VLo狀態(tài)。*誤差放大器(EA+EA,COMP)誤差放大器有兩個(gè)未提交的輸入端,EA+和EA-。它具有3MHz帶寬具有柔性的閉環(huán)反饋環(huán)。EA+為同相端,EA-為反向端。COMP為輸出端輸入電壓共模范圍保證在0.5V-3.6V。誤差放大器的輸出在內(nèi)部接到pWM比較器的同相輸入端,誤差放大器的輸出范圍為0.25V4.25V,遠(yuǎn)超出PwM比較器輸入上斜信號(hào)范圍,其從0.8v-2.8V。軟啟動(dòng)信號(hào)作為附加的放大器的同相輸入,當(dāng)誤差放大器的兩個(gè)同相輸入為低,是支配性的輸入,而且設(shè)置的占空比是誤差放大器輸出信號(hào)與內(nèi)部斜波相比較后放在PWM比較器的輸入處。
標(biāo)簽: ucc2895
上傳時(shí)間: 2022-03-31
上傳用戶:
《數(shù)據(jù)結(jié)構(gòu)與算法分析C++描述》 (第3版)是數(shù)據(jù)結(jié)構(gòu)和算法分析的經(jīng)典教材,書(shū)中使用主流的程序設(shè)計(jì)語(yǔ)言C++作為具體的實(shí)現(xiàn)語(yǔ)言。書(shū)的內(nèi)容包括表、棧、隊(duì)列、樹(shù)、散列表、優(yōu)先隊(duì)列、排序、不相交集算法、圖論算法、算法分析、算法設(shè)計(jì)、攤還分析、查找樹(shù)算法、k-d樹(shù)和配對(duì)堆等。編輯推薦《數(shù)據(jù)結(jié)構(gòu)與算法分析C++描述》(第3版)適合作為計(jì)算機(jī)相關(guān)專業(yè)本科生的數(shù)據(jù)結(jié)構(gòu)課程和研究生算法分析課程的教材。本科生的數(shù)據(jù)結(jié)構(gòu)課程可以使用本書(shū)第1章~第9章,多學(xué)時(shí)課程還可以講解第10章;研究生算法分析課程可以使用第6章~第12章。作者簡(jiǎn)介作者:(美國(guó))維斯 (Mark Allen Weiss) 譯者:張懷勇 等Mark Allen Weiss,1987年在普林斯頓大學(xué)獲得計(jì)算機(jī)科學(xué)博士學(xué)位,師從著名算法大師Robert Sedgewick,現(xiàn)任美國(guó)佛羅里達(dá)國(guó)際大學(xué)計(jì)算與信息科學(xué)學(xué)院教授。他曾經(jīng)擔(dān)任全美AP(Advanced Placement)考試計(jì)算機(jī)學(xué)科委員會(huì)的主席(2000-2004)。他的主要研究方向是數(shù)據(jù)結(jié)構(gòu),算法和教育學(xué)。
標(biāo)簽: 數(shù)據(jù)結(jié)構(gòu) C++
上傳時(shí)間: 2022-05-12
上傳用戶:
USB-PD快充和Type-C測(cè)試方案USB-PD(Power Delivery)是基于USB Type-C的供電標(biāo)準(zhǔn),最大功率可達(dá)100W雖然USB-PD快充越來(lái)越熱,但行業(yè)內(nèi)并沒(méi)有針對(duì)快充的測(cè)試工具,ZLG致遠(yuǎn)電子正式發(fā)布USB-PD測(cè)試方案,并提供免費(fèi)上門測(cè)試!1、USB Type-C簡(jiǎn)介Type-C是USB接口的一種形式,不分正反兩面均可插入,支持USB標(biāo)準(zhǔn)的充電、數(shù)據(jù)傳輸、視頻傳輸、音頻傳輸、顯示輸出等功能。支持USB-PD后則可實(shí)現(xiàn)高達(dá)100W的電源供電。本文涉及的USB-PD就是通過(guò)Type-C的“配置通道引腳CC'(圖1)進(jìn)行通訊的。USB-PD物理層使用單線通訊(Type-C配置通道CO,為了增強(qiáng)抗干擾能力并均衡直流分量,發(fā)送協(xié)議數(shù)據(jù)時(shí),物理層先使用4b/5b編碼對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,再使用雙相標(biāo)記編碼(BMO對(duì)數(shù)據(jù)流進(jìn)行二次轉(zhuǎn)換,最終將信號(hào)輸出到CC線上。接收的過(guò)程和發(fā)送的過(guò)程相反,具體過(guò)程如圖2所示。發(fā)送者或接收者通常為 USB PD控制器或微處理器。對(duì)USB-PD協(xié)議進(jìn)行分析時(shí),只能通過(guò)CC線上傳輸?shù)男盘?hào),其分析過(guò)程其實(shí)就類似于接收者的行為。
上傳時(shí)間: 2022-06-24
上傳用戶:d1997wayne
由于多繞組移相整流變壓器的二次線圈互相存在一個(gè)相位差,實(shí)現(xiàn)了輸入多重化,由此可以消除變頻器各單元產(chǎn)生的諧波對(duì)電網(wǎng)的污染,是高壓變頻器成為“綠色”電力電子產(chǎn)品的重要組成部分。本文以高壓變頻器中多繞組移相整流變壓器為主要研究對(duì)象,進(jìn)入了深入的研究,主要包括以下幾方面:1、對(duì)移相整流變壓器的研究現(xiàn)狀和發(fā)展趨勢(shì)作了較為全面的綜述,介紹了移相整流變壓器在高壓變頻器中的作用。2、分析了多繞組移相整流變壓器的移相原理。研究了多繞組移相整流變壓器勵(lì)磁涌流產(chǎn)生的原因、后果及如何解決。3、分析了ZTSG-530/6移相整流變壓器的主要參數(shù)計(jì)算、結(jié)構(gòu)設(shè)計(jì)。用Visual C++編程語(yǔ)言開(kāi)發(fā)了多繞組移相整流變壓器的電磁設(shè)計(jì)軟件。4、對(duì)多繞組移相整流變壓器的電磁場(chǎng)進(jìn)行了詳細(xì)的分析,運(yùn)用電磁場(chǎng)有限元分析軟件Maxwll3D對(duì)ZTSG-530/6移相整流變壓器樣機(jī)的瞬態(tài)磁場(chǎng)進(jìn)行分析。5、根據(jù)設(shè)計(jì),研制出樣機(jī)并試驗(yàn),得出試驗(yàn)數(shù)據(jù),并對(duì)比分析了電磁設(shè)計(jì)軟件的計(jì)算結(jié)果、試驗(yàn)結(jié)果和有限元分析結(jié)果,驗(yàn)證了所設(shè)計(jì)樣機(jī)數(shù)據(jù)的合理性。
標(biāo)簽: 整流變壓器
上傳時(shí)間: 2022-06-25
上傳用戶:
Parasoft C++test 是經(jīng)廣泛證明的最佳實(shí)踐集成解決方案,它能有效提高開(kāi)發(fā)團(tuán)隊(duì)工作效率和軟件質(zhì)量。C++test支持編碼策略增強(qiáng),靜態(tài)分析,全面代碼走查,單元與組件的 測(cè)試,為用戶提供一個(gè)實(shí)用的方法來(lái)確保其C/C++代碼按預(yù)期運(yùn)行。C++Test 能夠在桌面的IDE環(huán)境或命令行的批處理下進(jìn)行回歸測(cè)試。C++test 和 Parasoft GRS 報(bào)告系統(tǒng)相集成,為用戶提供基于Web且具備交互和向下鉆取能力的報(bào)表以供用戶查詢,并允許團(tuán)隊(duì)跟 蹤項(xiàng)目狀態(tài)并監(jiān)控項(xiàng)目趨勢(shì)。
上傳時(shí)間: 2013-07-10
上傳用戶:eeworm
Borland C++3.1 bc31full
上傳時(shí)間: 2013-07-27
上傳用戶:eeworm
Microsoft+Visual+C+++從入門到精通
上傳時(shí)間: 2013-06-05
上傳用戶:eeworm
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1