c语言常用算法pdf,妙趣横生的算法(C语言实现 第2版) 带目录完整pdf[94MB]-程序员宅基地

技术标签: c语言常用算法pdf  

《妙趣横生的算法(C语言实现 第2版)》是深受广大读者好评的《妙趣横生的算法(C语言实现)》一书的全新升级版。本书在第1版的基础上对原书内容做了大量的调整和补充,并将书中的实例代码在Visual Studio 2010环境下重新编译通过,以适应当前技术的发展和阅读需求。本书内容涵盖了算法入门的必备基础知识和大量的趣味算法题、面试题和ACM竞赛题等。通过学习本书内容,可以开阔读者的视野,帮助读者理解算法,提高编程兴趣和能力,并提高C语言编程能力,还可以让读者了解IT面试中的常见算法题及编程竞赛中的相关知识。另外,本书提供了5.5小时配套教学视频和实例源代码,以提高读者的学习效率。

本书共11章,分2篇。第1篇为算法基础,包括数据结构基础知识、常用的查找与排序方法、常用的算法思想等。第2篇为常用算法实例解析,包括20个编程基本功趣题、39个数学趣题、14个数据结构趣题、7个数值计算趣题、6个综合题、61个算法设计与数据结构面试题、4个ACM程序设计竞赛 题目。

本书适合学习算法的人员作为入门教程,也适合有C语言基础的人作为编程实践读物,还可作为有编程经验的程序员查阅相关算法实现和数据结构知识的参考书。另外,本书也可以为那些准备参加IT面试和信息学竞赛的读者提供有益的帮助。

目录

第1篇 算法基础

第1章 数据结构基础

1.1 什么是数据结构

1.2 顺序表

1.2.1 顺序表的定义

1.2.2 向顺序表中插入元素

1.2.3 从顺序表中删除元素

1.2.4 实例与分析

1.3 链表

1.3.1 创建一个链表

1.3.2 向链表中插入结点

1.3.3 从链表中删除结点

1.3.4 销毁一个链表

1.3.5 实例与分析

1.4 栈

1.4.1 栈的定义

1.4.2 创建一个栈

1.4.3 入栈操作

1.4.4 出栈操作

1.4.5 栈的其他操作

1.4.6 实例与分析

1.5 队列

1.5.1 队列的定义

1.5.2 创建一个队列

1.5.3 入队列操作

1.5.4 出队列操作

1.5.5 销毁一个队列

1.5.6 循环队列的概念

1.5.7 循环队列的实现

1.5.8 实例与分析

1.6 树结构

1.6.1 树的概念

1.6.2 树结构的计算机存储形式

1.6.3 二叉树的定义

1.6.4 二叉树的遍历

1.6.5 创建二叉树

1.6.6 实例与分析

1.7 图结构

1.7.1 图的概念

1.7.2 图的存储形式

1.7.3 邻接表的定义

1.7.4 图的创建

1.7.5 图的遍历(1)——深度优先搜索

1.7.6 图的遍历(2)——广度优先搜索

1.7.7 实例与分析

1.8 章后习题

第2章 常用的查找与排序方法

2.1 顺序查找

2.2 折半查找

2.3 排序的概述

2.4 直接插入排序

2.5 选择排序

2.6 冒泡排序

2.7 希尔排序

2.8 快速排序

2.9 堆排序

2.10 各种排序算法性能比较

2.11 章后习题

第3章 常用的算法思想

3.1 什么是算法

3.2 算法的分类表示及测评

3.2.1 算法的分类

3.2.2 算法的表示

3.2.3 算法性能的测评

3.3 穷举法思想

3.3.1 基本概念

3.3.2 寻找给定区间的素数

3.3.3 TOM的借书方案

3.4 递归与分治思想

3.4.1 基本概念

3.4.2 计算整数的划分数

3.4.3 递归的折半查找算法

3.5 贪心算法思想

3.5.1 基本概念

3.5.2 最优装船问题

3.6 回溯法

3.6.1 基本概念

3.6.2 四皇后问题求解

3.7 数值概率算法

3.7.1 基本概念

3.7.2 计算定积分

3.8 章后习题

第2篇 常用算法实例解析

第4章 编程基本功

4.1 字符类型统计器

4.2 计算字符的ASCII码

4.3 嵌套if-else语句的妙用

4.4 基于switch语句的译码器

4.5 判断闰年

4.6 指针变量作参数

4.7 矩阵的转置运算

4.8 矩阵的乘法运算

4.9 巧用位运算

4.10 文件的读写

4.11 计算文件的大小

4.12 记录程序的运行时间

4.13 十进制/二进制转化器

4.14 打印特殊图案

4.15 打印杨辉三角

4.16 复杂级数的前n项和

4.17 寻找矩阵中的“鞍点”

4.18 n阶勒让德多项式求解

4.19 递归反向输出字符串

4.20 一年中的第几天

第5章 数学趣题(一)

5.1 舍罕王的失算

5.2 求两个数的最大公约数和最小公倍数

5.3 歌德巴赫猜想的近似证明

5.4 三色球问题

5.5 百钱买百鸡问题

5.6 判断回文数字

5.7 填数字游戏求解

5.8 新郎和新娘

5.9 爱因斯坦的阶梯问题

5.10 寻找水仙花数

5.11 猴子吃桃问题

5.12 兔子产仔问题

5.13 分解质因数

5.14 常胜将军

5.15 求π的近似值

5.16 魔幻方阵

5.17 移数字游戏

5.18 数字的全排列

5.19 完全数

5.20 亲密数

5.21 数字翻译器

5.22 递归实现数制转换

5.23 谁在说谎

第6章 数学趣题(二)

6.1 连续整数固定和问题

6.2 表示成两个数的平方和

6.3 具有特殊性质的数

6.4 验证角谷猜想

6.5 验证四方定理

6.6 递归法寻找最小值

6.7 寻找同构数

6.8 验证尼科彻斯定理

6.9 三重回文数字

6.10 马克思手稿中的数学题

6.11 渔夫捕鱼问题

6.12 寻找假币

6.13 计算组合数

6.14 递归法求幂

6.15 汉诺塔

6.16 选美比赛

第7章 数据结构趣题

7.1 顺序表的就地逆置

7.2 动态数列排序

7.3 在原表空间进行链表的归并

7.4 约瑟夫环

7.5 二进制/八进制转换器

7.6 回文字符串的判定

7.7 括号匹配

7.8 魔王语言翻译

7.9 动态双向链表的应用

7.10 判断完全二叉树

7.11 动画模拟创建二叉树

7.12 打印符号三角形

7.13 递归函数的非递归求解

7.14 任意长度整数加法

第8章 数值计算问题

8.1 递推化梯形法求解定积分

8.2 求解低阶定积分

8.3 迭代法开平方运算

8.4 牛顿法解方程

8.5 欧拉方法求解微分方程

8.6 改进的欧拉方法求解微分方程

8.7 雅可比迭代公式求解线性方程组

第9章 综合题

9.1 破碎的砝码

9.2 计算24的问题

9.3 马踏棋盘

9.4 0-1背包问题

9.5 八皇后问题求解

9.6 简易文件加密/解密系统

第10章 算法设计与数据结构面试题精粹

10.1 常见的算法设计题

10.2 常见的数据结构题

第11章 ACM程序设计竞赛题目选讲

11.1 奥斯卡奖章

11.2 准备就绪?

11.3 兔子

11.4 阶乘之和

e8c1d9c0fa54e86a17b527bbb97aa25f.png

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_34438187/article/details/117072596

智能推荐

分布式光纤传感器的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告_预计2026年中国分布式传感器市场规模有多大-程序员宅基地

文章浏览阅读3.2k次。本文研究全球与中国市场分布式光纤传感器的发展现状及未来发展趋势,分别从生产和消费的角度分析分布式光纤传感器的主要生产地区、主要消费地区以及主要的生产商。重点分析全球与中国市场的主要厂商产品特点、产品规格、不同规格产品的价格、产量、产值及全球和中国市场主要生产商的市场份额。主要生产商包括:FISO TechnologiesBrugg KabelSensor HighwayOmnisensAFL GlobalQinetiQ GroupLockheed MartinOSENSA Innovati_预计2026年中国分布式传感器市场规模有多大

07_08 常用组合逻辑电路结构——为IC设计的延时估计铺垫_基4布斯算法代码-程序员宅基地

文章浏览阅读1.1k次,点赞2次,收藏12次。常用组合逻辑电路结构——为IC设计的延时估计铺垫学习目的:估计模块间的delay,确保写的代码的timing 综合能给到多少HZ,以满足需求!_基4布斯算法代码

OpenAI Manager助手(基于SpringBoot和Vue)_chatgpt网页版-程序员宅基地

文章浏览阅读3.3k次,点赞3次,收藏5次。OpenAI Manager助手(基于SpringBoot和Vue)_chatgpt网页版

关于美国计算机奥赛USACO,你想知道的都在这_usaco可以多次提交吗-程序员宅基地

文章浏览阅读2.2k次。USACO自1992年举办,到目前为止已经举办了27届,目的是为了帮助美国信息学国家队选拔IOI的队员,目前逐渐发展为全球热门的线上赛事,成为美国大学申请条件下,含金量相当高的官方竞赛。USACO的比赛成绩可以助力计算机专业留学,越来越多的学生进入了康奈尔,麻省理工,普林斯顿,哈佛和耶鲁等大学,这些同学的共同点是他们都参加了美国计算机科学竞赛(USACO),并且取得过非常好的成绩。适合参赛人群USACO适合国内在读学生有意向申请美国大学的或者想锻炼自己编程能力的同学,高三学生也可以参加12月的第_usaco可以多次提交吗

MySQL存储过程和自定义函数_mysql自定义函数和存储过程-程序员宅基地

文章浏览阅读394次。1.1 存储程序1.2 创建存储过程1.3 创建自定义函数1.3.1 示例1.4 自定义函数和存储过程的区别1.5 变量的使用1.6 定义条件和处理程序1.6.1 定义条件1.6.1.1 示例1.6.2 定义处理程序1.6.2.1 示例1.7 光标的使用1.7.1 声明光标1.7.2 打开光标1.7.3 使用光标1.7.4 关闭光标1.8 流程控制的使用1.8.1 IF语句1.8.2 CASE语句1.8.3 LOOP语句1.8.4 LEAVE语句1.8.5 ITERATE语句1.8.6 REPEAT语句。_mysql自定义函数和存储过程

半导体基础知识与PN结_本征半导体电流为0-程序员宅基地

文章浏览阅读188次。半导体二极管——集成电路最小组成单元。_本征半导体电流为0

随便推点

【Unity3d Shader】水面和岩浆效果_unity 岩浆shader-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏18次。游戏水面特效实现方式太多。咱们这边介绍的是一最简单的UV动画(无顶点位移),整个mesh由4个顶点构成。实现了水面效果(左图),不动代码稍微修改下参数和贴图可以实现岩浆效果(右图)。有要思路是1,uv按时间去做正弦波移动2,在1的基础上加个凹凸图混合uv3,在1、2的基础上加个水流方向4,加上对雾效的支持,如没必要请自行删除雾效代码(把包含fog的几行代码删除)S..._unity 岩浆shader

广义线性模型——Logistic回归模型(1)_广义线性回归模型-程序员宅基地

文章浏览阅读5k次。广义线性模型是线性模型的扩展,它通过连接函数建立响应变量的数学期望值与线性组合的预测变量之间的关系。广义线性模型拟合的形式为:其中g(μY)是条件均值的函数(称为连接函数)。另外,你可放松Y为正态分布的假设,改为Y 服从指数分布族中的一种分布即可。设定好连接函数和概率分布后,便可以通过最大似然估计的多次迭代推导出各参数值。在大部分情况下,线性模型就可以通过一系列连续型或类别型预测变量来预测正态分布的响应变量的工作。但是,有时候我们要进行非正态因变量的分析,例如:(1)类别型.._广义线性回归模型

HTML+CSS大作业 环境网页设计与实现(垃圾分类) web前端开发技术 web课程设计 网页规划与设计_垃圾分类网页设计目标怎么写-程序员宅基地

文章浏览阅读69次。环境保护、 保护地球、 校园环保、垃圾分类、绿色家园、等网站的设计与制作。 总结了一些学生网页制作的经验:一般的网页需要融入以下知识点:div+css布局、浮动、定位、高级css、表格、表单及验证、js轮播图、音频 视频 Flash的应用、ul li、下拉导航栏、鼠标划过效果等知识点,网页的风格主题也很全面:如爱好、风景、校园、美食、动漫、游戏、咖啡、音乐、家乡、电影、名人、商城以及个人主页等主题,学生、新手可参考下方页面的布局和设计和HTML源码(有用点赞△) 一套A+的网_垃圾分类网页设计目标怎么写

C# .Net 发布后,把dll全部放在一个文件夹中,让软件目录更整洁_.net dll 全局目录-程序员宅基地

文章浏览阅读614次,点赞7次,收藏11次。之前找到一个修改 exe 中 DLL地址 的方法, 不太好使,虽然能正确启动, 但无法改变 exe 的工作目录,这就影响了.Net 中很多获取 exe 执行目录来拼接的地址 ( 相对路径 ),比如 wwwroot 和 代码中相对目录还有一些复制到目录的普通文件 等等,它们的地址都会指向原来 exe 的目录, 而不是自定义的 “lib” 目录,根本原因就是没有修改 exe 的工作目录这次来搞一个启动程序,把 .net 的所有东西都放在一个文件夹,在文件夹同级的目录制作一个 exe._.net dll 全局目录

BRIEF特征点描述算法_breif description calculation 特征点-程序员宅基地

文章浏览阅读1.5k次。本文为转载,原博客地址:http://blog.csdn.net/hujingshuang/article/details/46910259简介 BRIEF是2010年的一篇名为《BRIEF:Binary Robust Independent Elementary Features》的文章中提出,BRIEF是对已检测到的特征点进行描述,它是一种二进制编码的描述子,摈弃了利用区域灰度..._breif description calculation 特征点

房屋租赁管理系统的设计和实现,SpringBoot计算机毕业设计论文_基于spring boot的房屋租赁系统论文-程序员宅基地

文章浏览阅读4.1k次,点赞21次,收藏79次。本文是《基于SpringBoot的房屋租赁管理系统》的配套原创说明文档,可以给应届毕业生提供格式撰写参考,也可以给开发类似系统的朋友们提供功能业务设计思路。_基于spring boot的房屋租赁系统论文