中国药科大学:《数据结构》课程PPT教学课件(讲稿)第二章 数组的定义和初始化知识讲解

第二章数组 作为抽象数据类型的数组 字符电
◼ 作为抽象数据类型的数组 ◼ 顺序表 ◼ 稀疏矩阵 ◼ 字符串

作为抽象数据类型的数组 维数组 维数组的示例 0123456789 35274918605477834102
作为抽象数据类型的数组 ◼ 一维数组 ◆ 一维数组的示例 35 27 49 18 60 54 77 83 41 02 0 1 2 3 4 5 6 7 8 9

维数组的特点 连续存储的线性表(别名向量)
一维数组的特点 ◼ 连续存储的线性表(别名 向量)

数组的定义和初始化 #include class szcl i int ea public: szcl ofe=0; scl( int value e=value; 3 int get value (i return e;)
数组的定义和初始化 #include class szcl { int e; public: szcl ( ) { e = 0; } szcl ( int value ) { e = value; } int get_value ( ) { return e; } }

main(i szcl al3=(3, 5,7),elem; for( int 1=0; 1 get value()<n;∥动态 elem++ return U;
main ( ) { szcl a1[3] = { 3, 5, 7 }, *elem; for ( int i = 0; i get_value( ) << “\n”; //动态 elem++; } return 0; }

一维数组(Aray)类的定义 include #include template class array i Type elements;数组存放空间 int ArraySize ∥/当前长度 void getArray();∥建立数组空 publi Array( int Size=DefaultSize ) Array( const Array&x);
一维数组(Array)类的定义 #include #include template class Array { Type *elements; //数组存放空间 int ArraySize; //当前长度 void getArray ( ); //建立数组空间 public: Array( int Size=DefaultSize ); Array( const Array& x );

array)i delete l elements; l Aray& operator=∥数组复制 const Array &a); ype& operator](inti);∥取元素值 int Length( const return ArraySize; ∥取数组长度 void Resize( int sz ) ∥/扩广充数组
~Array( ) { delete [ ]elements;} Array & operator = //数组复制 ( const Array & A ); Type& operator [ ] ( int i ); //取元素值 int Length ( ) const { return ArraySize; } //取数组长度 void ReSize ( int sz ); //扩充数组 }

维数组公共操作的实现 template void Array:: getArray (i 有函数:创建数组存储空间 elements new Type [ArraySize]; if elements== NULL arraySize =0; cerr<<存储分配错!"<<endl return
template void Array :: getArray ( ) { //私有函数:创建数组存储空间 elements = new Type[ArraySize]; if ( elements == NULL ) { arraySize = 0; cerr << “存储分配错!" << endl; return; } 一维数组公共操作的实现

template Array:: Array( int sz )( /构造函数 if(sz<=0){ arraySize =0 cerr<<“非法数组大小”<<endl; return Arraysize sz getArray
template Array :: Array ( int sz ) { //构造函数 if ( sz <= 0 ) { arraySize = 0; cerr << “非法数组大小” << endl; return; } ArraySize = sz; getArray ( ); }

template Array. Aray(Aray&x){∥复制构造函数 int n= ArraySize =x Arraysize elements=new Typen; if elements== NULL)& arraysIze 0 cerr<<“存储分配错"<<endl; return ype srcptr=xelements; Type *destptr=elements; while(n)*destptr++=* srcptr++
template Array :: Array ( Array & x ) { //复制构造函数 int n = ArraySize = x.ArraySize; elements = new Type[n]; if ( elements == NULL ) { arraySize = 0; cerr << “存储分配错”<< endl; return; } Type *srcptr = x.elements; Type *destptr = elements; while ( n-- ) * destptr++ = * srcptr++; }
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第十章 索引与散列结构知识讲解.ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第一章 绪论.ppt
- AUTO CAD205中文教程 教学课件讲解.ppt
- 微机原理、汇编语言与接口技术:第四章 机器语言、汇编语言与高级语言.ppt
- 微机原理、汇编语言与接口技术:第六章 总线的基本概念.ppt
- 微机原理、汇编语言与接口技术:第八章 中断技术、DMA控制器及定时器/计数器.ppt
- 微机原理、汇编语言与接口技术:第五章 存储系统及半导体存储器.ppt
- 微机原理、汇编语言与接口技术:第二章 微机原理与接口技术微处理器.ppt
- 微机原理、汇编语言与接口技术:第九章 数、模和数、数模转换.ppt
- 微机原理、汇编语言与接口技术:第三章 微型计算机指令系统.ppt
- 微机原理、汇编语言与接口技术:第七章 输入输出总线接口技术.ppt
- 微机原理、汇编语言与接口技术:第一章 微型计算机的发展、应用及其分类.ppt
- 东北农业大学工程学院:《计算机集成制造技术》课程教学资源(PPT课件)计算机辅助制造概论.ppt
- 计算机应用基础_Killer Transitions README.rtf
- 计算机应用基础_KILLER Transitions Manual.rtf
- VISUAL C++ MFC 简明教程.doc
- 柳州师专电算中心《计算机应用基础》练习题集_封面.doc
- 柳州师专电算中心《计算机应用基础》练习题集.doc
- 计算机应用基础练习题集_光盘的种类和用途.doc
- 计算机应用基础练习题集_媒体数字化.doc
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第三章 链表之(单链表的类定义).ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第四章 栈和队列的知识概论.ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第五章 递归与广义表的知识概念讲解.ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第六章 树与森林的概念讲解.ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第七章 集合与搜索的基本概念.ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第八章 图的基本概念的知识讲解.ppt
- 中国药科大学:《数据结构》课程PPT教学课件(讲稿)第九章 排序的基本概述.ppt
- 科学计算与 MATLAB语言——第一章 MATLAB概述与运算基础.pps
- 科学计算与 MATLAB语言——第二章 MATLAB程序设计.pps
- 科学计算与 MATLAB语言——第三章 Mat1ab的文件操作.pps
- 科学计算与 MATLAB语言——第四章 Matlab绘图功能.pps
- 科学计算与 MATLAB语言——第五章 MATLAB线性代数中的数值计算问题.pps
- 科学计算与 MATLAB语言——第六章数据处理方法与多项式.pps
- 科学计算与 MATLAB语言——第七章 MATLAB的符号计算.pps
- 科学计算与 MATLAB语言——第八章 MATLAB图形用 户界面设计.pps
- Linux实用教程——第一章 Linux的实用教程概况及安装.ppt
- Linux实用教程——第二章 Linux的常用命令.ppt
- Linux实用教程——第三章 Linux系统管理概述.ppt
- Linux实用教程——第四章 Linux网络基础.ppt
- Linux实用教程——第五章 Intranet服务器.ppt