C++引用在《数据结构》算法中的应用研究与实践(已经接受).pdfVIP

C++引用在《数据结构》算法中的应用研究与实践(已经接受).pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

C++引用在《数据结构》算法中的应用研究与实践

摘要严蔚敏编写的教材《数据结构(C语言版)》是数据结构的经典教材,

其中用到了C++的引用参数,但一般高校在其前期的C语言课程中都

没有讲过,一般数据结构教师也不会讲这部分内容,所以学生就感觉

要把该教材上的算法转变成程序非常困难。为此本文对引用的基本知

识进行了介绍,并以线性表的存储表示为例,探讨了引用在数据结构

中的顺序存储表示和链式存储表示中的应用,从中可见教材中的算法

几乎是零修改就可以直接使用。

关键词引用严蔚敏教材数据结构无缝衔接

严蔚敏教材《数据结构(C语言版)》是数据结构的经典教材,被很多高校采用,其中

采用类C语言来描述算法,除采用了C语言的一个核心子集来描述算法外,另外重要一点

就是采用了引用调用的参数传递方式。该书的C语言核心子集都容易理解,学生用C语言

实现也很简单,但引用参数这部分内容在C语言中没有讲过,一般数据结构教师也不讲,

并且涉及到C++,所以学生就感觉教材上的引用参数很难理解,要把教材上的算法改写成程

序的跨度和难度都非常大。

为此,本文对引用的概念、引用参数的使用进行了简单介绍,并以线性表的存储表示为

例,给出了两个在严蔚敏《数据结构(C语言版)》教材中经常要用到的数组和链表操作的

实现,学生通过对本文内容的理解和练习,可以实现C语言与数据结构的自由过渡和无缝

衔接,帮助学生理解数据结构教材中的算法,提高将算法转换成程序的能力。在编程环境上,

采用了TurboCC++3.0英文版集成环境,它包含了TurboC的功能,识别标准C,又能进

行C++编程,只要将源文件存为扩展名为.cpp的文件,就可以用标准C编程,同时又能使

用C++的引用。

一、引用的基本概念

引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用

引用,可以使程序简洁、高效。引用就是某一变量(目标)的一个别名,对引用的操作与对

变量直接操作完全一样,都是操作同一个变量单元。

引用的声明方法:类型标识符引用名=目标变量名;

//例1,源文件名为:yin1.cpp

#includestdio.h

main()

{inta;intra=a;//定义引用ra,它是变量a的引用,即别名

用变量a输入

分别用变量a和引用输出

用变量a的引用输入

}

例1程序运行后,可以看到操作变量a的引用ra和操作变量a本身的效果是一样的。

说明:

(1)在此不是求地址运算,而是起标识作用。

1

(2)类型标识符是指目标变量的类型。

(3)声明引用时,必须同时对其进行初始化。

(4)引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,且

不能再把该引用名作为其他变量名的别名。

ra=1;等价于a=1;

(5)声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个

别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单

元。故:对引用求地址,就是对目标变量求地址。ra与a相等。

(6)不能建立数组的引用。因为数组是一个由若干个元素所组成的集合,所以无法建

立一个数组的别名。

二、引用作为函数的参数

引用的一个重要作用就是作为函数的参数。以前的C语言中函数参数传递是值传递,

如果有大块数据需要传递的时候,采用的方案往往是指针,因为这样可以避免为整块数据建

立副本并全部压栈,可以提高程序的效率。但是现在(C++中)又增加了一种同样有效率的

选择(在某些特殊情况下又是必须的选择),就是引用。

//例2,源文件名为:yin2.cpp,包含swap和main两个函数

voidswap(intp1,intp2)//

您可能关注的文档

文档评论(0)

156****9598 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档