- 关 键 词:
- 数据结构
教学目的: 复习前面所学的内容,检验学习效果,拾遗补缺
教学重点:
教学难点:
授课内容:
测验题:
一,填空:
- 基本数据结构有____,____,____,____四种。
- 存储结构可根据数据元素在机器中的位置是否连续分为____,____。
- 算法的基本要求有_____,_____,____,____。
- 度量算法效率可通过_______,_______两方面进行。
- 栈的定义:_______________________。
二,简答:
- 举例说明数据对象、数据元素、数据项的定义。
- 类C语言和C语言有哪些主要区别?
- 线性表的基本操作有哪些?
- 写出类C语言定义的线性表的静态分配顺序存储结构。
三,算法设计:
- 下面是线性表的存储结构和插入算法,请补充算法中空缺部分。
#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
typedef struct{
ElemType *elem; //存储空间基址
int length; //当前长度
int listsize; //当前分配的存储容量以一数据元素存储长度为单位
}SqList;
status ListInsert(List *L,int i,ElemType e) {
____________ *p,*q;
if (i<1||i>L->length+1) return ERROR;
q=&(L->elem[i-1]);
for(p=&L->elem[L->length-1];p>=q;--p)
________________;
*q=e;
__________________;
return OK;
}/*ListInsert Before i */
- 下面是栈的顺序存储结构和入栈、出栈算法,请补充算法中空缺部分。
typedef struct{
SElemType *base;
SElemType *top; //设栈顶栈底两指针的目的是便于判断栈是否为空
int StackSize; //栈的当前可使用的最大容量.
}SqStack;
Status Push(SqStack &S,SElemType e); {
if(S.top - s.base>=S.stacksize) {
S.base=(ElemType *) realloc(S.base,
(S.stacksize + STACKINCREMENT) * sizeof(ElemType));
if(!S.base)exit(OVERFLOW);
S.top=S.base+S.stacksize;
S.stacksize+=STACKINCREMENT;
}
*S.top++=_____;
return OK;
} //Push
Status Pop(SqStack &S,SElemType &e); {
if(________)
return ERROR;
_____=*--S.top;
return OK;
}//Pop
四,问答:
浏览地址: http://www.qqread.com/data-structure/u784104102.html
- 用图示法说明在单向线性链表中插入结点的过程。
- 有一学生成绩单,画出用链式存储结构时的成绩单数据的存储映像。
- 用C语言实现单向线性链表。写出存储结构定义及基本算法。
相关专题
- 数据结构 (174篇文章)
- ASP.NET教程 (8422篇文章)
- FreeBSD使用教程 (6551篇文章)
- 数据结构教程 (69篇文章)
- 数据结构相关文章 (174篇文章)
- 最新数据结构(试题)习题解答 (10493次浏览)
- 《数据结构》试题下载2004 (6688次浏览)
- 数据结构自测试题(节选章节) (5507次浏览)
- Linux系统的硬件驱动程序编写原理 (4647次浏览)
- 搭建Ruby on Rails开发环境 (4333次浏览)
- 2000年试题集锦(下半年)数据结构试题 (4069次浏览)
- Solaris 10 安装及SVC管理及X及Vmware及其 (3781次浏览)
- 网游外挂编写完全攻略 (3754次浏览)
- 《数据结构》教学大纲--入门必看 (3607次浏览)
- UML业务建模实例分析 (2941次浏览)



