《数学与泛型编程:高效编程的奥秘》一1.3 阅读准备

简介: 本节书摘来自华章出版社《数学与泛型编程:高效编程的奥秘》一 书中的第1章,第1.3节,作者:丹尼尔E.罗斯(Daniel E. Rose),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 阅读准备

由于书中的很多内容都和数学有关,因此你可能担心自己必须先具备丰富的数学知识,然后才能看懂这本书。其实你只要有逻辑思考能力就行(程序员应该很擅长逻辑思考),笔者并不会要求大家具备中学代数与中学几何之外的其他数学知识。某些章节可能会运用向量(vector)与矩阵(matrix)等线性代数(linear algebra)方面的概念,如果从前没有看过这方面的资料,那么把这些内容跳过去就可以了。若是对本书所用的记法不够熟悉,则请参考附录A。
数学中有一个很重要的部分就是对命题给出形式化证明。本书就包含了许多这样的证明过程。如果你在中学的几何课、计算机科学专业的自动机理论(automata theory)课以及逻辑课中做过一些证明,那么应该很容易就能理解本书所给出的证明。附录B描述了某些常用的证明技巧,并给出了范例。
笔者假设你已经是一名程序员了,而且对C、C++或Java等典型的命令式(imperative)编程语言相当熟悉。尽管书中的范例是用C++写的,但即便你原来没有用C++写过程序,也依然应该看得懂才对。附录C解释了一些C++特有的机制。虽说我们用的是C++语言,但笔者相信,书中所讲的原则能够适用于其他各种语言。
本书所谈的很多编程话题也同时出现在Stepanov与McJones所写的《编程原本》(Elements of Programming)一书中,而后者是从另外一种更加正式的角度来讲解这些话题的。想要深入研究这些话题的读者可以参考那本书,并将其与本书结合起来阅读。在本书里,我们偶尔也会提到《编程原本》中的相关章节。

相关文章
|
算法 数据处理 C++
【C++ 20 新特性 算法和迭代器库的扩展和泛化 Ranges】深入浅出C++ Ranges库 (Exploring the C++ Ranges Library)
【C++ 20 新特性 算法和迭代器库的扩展和泛化 Ranges】深入浅出C++ Ranges库 (Exploring the C++ Ranges Library)
1803 1
|
负载均衡 5G
频谱利用 | 带你读《5G 空口设计与实践进阶 》之二十
NR 单载波最大支持 275 个 RB,即 3300 个子载波。这相应也约束了不同Numerology 下 NR 的最大工作带宽。NR 须通过合理设置保护带宽来降低误差矢量幅度、抑制相邻频道泄漏。
频谱利用 | 带你读《5G 空口设计与实践进阶 》之二十
|
资源调度 数据可视化 JavaScript
一个高效的低代码表单,可视化设计,一键生成源码,享受更多摸鱼时间!
Variant Form 是一款基于 Vue 2 的低代码表单生成器,采用可视化拖拽设计界面,支持一键生成完整源码,大幅降低开发复杂度。它具备高度自定义配置能力,能够满足不同场景需求,并且完全开源免费。通过简单的拖拽操作,用户可以轻松创建表单,同时还能自定义 CSS 样式、校验逻辑及多语言支持等功能。安装便捷,兼容多种环境,极大提升开发效率。赶紧试试 Variant Form,享受高效开发的乐趣吧!
423 0
|
缓存 安全 网络协议
什么是 Proxy?
什么是 Proxy?
4052 0
|
前端开发 开发工具 C++
vscode ( Visual Studio Code )设置中文、字体和字号
vscode ( Visual Studio Code )设置中文、字体和字号
3576 0
|
JSON 弹性计算 前端开发
如何规范 RESTful API 的业务错误处理
如何规范 RESTful API 的业务错误处理
2307 0
|
算法 关系型数据库 5G
前几代移动通信的演进 | 带你读《5G-NR信道编码》之二
本章节介绍了前几代移动通信的演进,带你感受移动通信的进化之路。
前几代移动通信的演进  | 带你读《5G-NR信道编码》之二
LDPC 的产生和发展 | 带你读《5G-NR信道编码》之六
低密度校验码(LDPC)是在1963年由Gallager发明的线性分组码 [1-2]。 由于该码的校验矩阵 H 具有很低的密度(H 只有少量的“1”,大 部分是“0”,即 H 的密度很低;H 是一个稀疏矩阵),故,Gallager 称 其为低密度校验码。经过 50 多年的发展,LDPC 码的构造、编码、译 码等方法已相当完备。LDPC 码已广泛应用到数据存储、光通信和无线 通信等系统中。
LDPC 的产生和发展  | 带你读《5G-NR信道编码》之六
|
数据采集 监控 5G
部分带宽 | 带你读《5G 空口设计与实践进阶 》之二十一
部分带宽(BWP)是在给定载波和给定 Numerology 条件下的一组连续的PRB。由于 NR 支持小至 5 MHz、大至 400 MHz 的工作带宽,如果要求所有UE 均支持最大的 400 MHz 带宽,无疑会对 UE 的性能提出较高要求,也不利于降低 UE 的成本。同时,由于一个 UE 不可能同时占满整个 400 MHz 带宽,且高带宽意味着高采样率,而高采样率意味着更高功耗,如果 UE 全部按照支持 400 MHz 的带宽进行设计,无疑是对性能的极大浪费。因此,NR 引入了带宽自适应(Bandwidth Adaptation)技术,针对性地解决上述问题。
部分带宽 | 带你读《5G 空口设计与实践进阶 》之二十一
|
5G 定位技术 虚拟化
空域结构 | 带你读《5G 空口设计与实践进阶 》之二十二
在 NR 物理层中,来自上层的业务流进行信道编码后的数据,称之为码字(Code Word)。不同的码字可以区分不同的数据流,其目的是通过 MIMO 发送多路数据,实现空分复用。由于码字数量与发射天线数量不一致,需要通过层映射和预编码将码字流映射到不同的发射天线上。层映射首先按照一定的规则将码字流重新映射到多个层(新的数据流),预编码再将数据映射到不同的天线端口上,再在各个天线端口上进行资源映射,生成 OFDM 符号并发射。
空域结构 | 带你读《5G 空口设计与实践进阶 》之二十二

热门文章

最新文章

下一篇
开通oss服务