数据结构和算法分析习题解答之二——第1章习题解答

     这一章的题目叫做Programming: A General Overview。也就是对编程进行一个概述。这一章的内容挺丰富的,提到了本书的目的、数学基础知识、递归函数介绍以及C++的基础知识回顾,最后还提到了一个简单的矩阵的类。特别值得注意的是,这一章里回顾了C++ 11标准新引进的右值引用(rvalue reference)以及移动语义(move semantics)。没有系统学习过C++ 11的同学看起来可能觉得很困惑(当初我就是这样感觉的);不过不用着急,如果想要对C++ 11有一个比较好的理解的话,推荐大家看《Ivor Horton’s BeginningVisual C++ 2013》这本书,里面对C++ 11进行了比较详细的介绍。

下面开始对习题进行解答。

 

习题1.1

     这道题让我们编程来解决本章一开始提出的选择问题(selection problem),并且还要画表格来表示对于不同的N所需的运行时间。为什么要画表格呢?直接在控制台里输出就OK了呀!当然为了计算时间,我#include了ctime库文件。计算时间还有很多其他方法,不过这个好像是在没有包含Windows API的情况下精确度最高、最便于使用的了。由于这一章里我们没有学习到任何高级算法,所以只能用本章一开始给出的两个思路了。这两种思路体现在了本题解答的两个函数里面,看官一阅便知。从运行结果上来看,至少对于我给出的这个实例,第二种思路确实要稍微快一些。

 

习题1.2

     这道题让我们编程来解决本章一开始提出的单词谜题(word puzzle

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值