没有合适的资源?快使用搜索试试~ 我知道了~
(完整word版)算法经典案例(C语言).doc
需积分: 5 0 下载量 23 浏览量
2022-10-24
01:31:43
上传
评论
收藏 882KB DOC 举报
温馨提示
![preview](https://dl-preview.csdnimg.cn/86809686/0001-15bc820fbbd0cf89907e13620b621840_thumbnail-wide.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
试读
181页
(完整word版)算法经典案例(C语言).doc
资源推荐
资源详情
资源评论
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/release/download_crawler_static/86809686/bg1.jpg)
(完整 word 版)算法经典案例(C 语言)
1
C 语言的经典:算法!
里面包含了大量的经典算法:
其中包括:
奇数魔方阵、
费式数列、
格雷码、
约瑟夫问题等等近 50 个优秀案例。
![](https://csdnimg.cn/release/download_crawler_static/86809686/bg2.jpg)
(完整 word 版)算法经典案例(C 语言)
2
第一章:目录
1.汉若塔 ...............................................................................................................................................2
2.费式数列...........................................................................................................................................3
3. 巴斯卡三角形.................................................................................................................................4
4.三色棋 ...............................................................................................................................................5
5.老鼠走迷官(一) ..........................................................................................................................7
6.老鼠走迷官(二) ..........................................................................................................................9
7.骑士走棋盘.....................................................................................................................................10
8.八皇后.............................................................................................................................................13
9.八枚银币.........................................................................................................................................15
10.生命游戏 ......................................................................................................................................17
11.字串核对 ......................................................................................................................................20
12.双色、三色河内塔......................................................................................................................22
13.背包问题(Knapsack Problem) .........................................................................................26
14.蒙地卡罗法求 PI ........................................................................................................................31
15.Eratosthenes 筛选求质数 .......................................................................................................32
![](https://csdnimg.cn/release/download_crawler_static/86809686/bg3.jpg)
(完整 word 版)算法经典案例(C 语言)
3
16.超长整数运算(大数运算).....................................................................................................34
17.长 PI.............................................................................................................................................36
18.最大公因数、最小公倍数、因式分解 ....................................................................................39
19.完美数 ..........................................................................................................................................42
20.阿姆斯壮数..................................................................................................................................45
21.最大访客数..................................................................................................................................46
22.中序式转后序式(前序式).....................................................................................................48
23.后序式的运算..............................................................................................................................52
24.洗扑克牌(乱数排列) .............................................................................................................54
25.Craps 赌博游戏..........................................................................................................................56
26.约瑟夫问题(Josephus Problem)......................................................................................58
27.排列组合 ......................................................................................................................................60
28.格雷码(Gray Code) .............................................................................................................61
29.产生可能的集合..........................................................................................................................63
30.m 元素集合的 n 个元素子集....................................................................................................66
31.数字拆解 ......................................................................................................................................68
32.得分排行 ......................................................................................................................................71
33.选择、插入、气泡排序 .............................................................................................................73
34.Shell 排序法 - 改良的插入排序............................................................................................77
35.Shaker 排序法 - 改良的气泡排序........................................................................................80
36.排序法 - 改良的选择排序 .......................................................................................................82
37.快速排序法(一)......................................................................................................................86
38.快速排序法(二)......................................................................................................................88
![](https://csdnimg.cn/release/download_crawler_static/86809686/bg4.jpg)
(完整 word 版)算法经典案例(C 语言)
4
39.快速排序法(三)......................................................................................................................90
40.合并排序法..................................................................................................................................93
41.基数排序法..................................................................................................................................96
42.循序搜寻法(使用卫兵) .........................................................................................................98
43.二分搜寻法(搜寻原则的代表) ..........................................................................................100
44.插补搜寻法................................................................................................................................103
45.费氏搜寻法................................................................................................................................106
46.稀疏矩阵....................................................................................................................................110
47.多维矩阵转一维矩阵...............................................................................................................111
48.上三角、下三角、对称矩阵...................................................................................................113
49.奇数魔方阵................................................................................................................................115
50.4N 魔方阵 ................................................................................................................................117
51.2(2N+1) 魔方阵 .....................................................................................................................119
1.汉若塔
说明河内之塔(Towers of Hanoi)是法国人M.Claus(Lucas)于1883年从泰国带至法国的,河内为越战时北
越的首都,即现在的胡志明市;1883年法国数学家 Edouard Lucas曾提及这个故事,据说创世纪时Benares
有一座波罗教塔,是由三支钻石棒(Pag)所支撑,开始时神在第一根棒上放置64个由上至下依由小至大排
列的金盘(Disc),并命令僧侣将所有的金盘从第一根石棒移至第三根石棒,且搬运过程中遵守大盘子在小
盘子之下的原则,若每日仅搬一个盘子,则当盘子全数搬运完毕之时,此塔将毁损,而也就是世界末日来临
之时。
解法如果柱子标为ABC,要由A搬至C,在只有一个盘子时,就将它直接搬至C,当有两个盘子,就将B当作
辅助柱。如果盘数超过2 个,将第三个以下的盘子遮起来,就很简单了,每次处理两个盘子,也就是:
![](https://csdnimg.cn/release/download_crawler_static/86809686/bg5.jpg)
(完整 word 版)算法经典案例(C 语言)
5
A->B、A ->C、B->C这三个步骤,而被遮住的部份,其实就是进入程式的递回处理。事实上,若有n个盘
子 , 则 移 动 完 毕 所 需 之 次 数 为 2^n - 1 , 所 以 当 盘 数 为 64 时 , 则 所 需 次 数 为 : 2
64
- 1 =
18446744073709551615为5.05390248594782e+16年,也就是约5000世纪,如果对这数字没什幺概念,
就假设每秒钟搬一个盘子好了,也要约5850亿年左右。
#include <stdio.h>
void hanoi(int n, char A, char B, char C) {
if(n == 1) {
printf("Move sheet %d from %c to %c\n", n, A, C);
}
else {
hanoi(n-1, A, C, B);
printf("Move sheet %d from %c to %c\n", n, A, C);
hanoi(n-1, B, A, C);
}
}
int main() {
int n;
printf("请输入盘数:");
scanf("%d", &n);
hanoi(n, 'A', 'B', 'C');
return 0;
}
剩余180页未读,继续阅读
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/acfce43ffe2c41f996326bd927946824_yhsbzl.jpg!1)
智慧安全方案
- 粉丝: 3702
- 资源: 59万+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)