第三周实践1--顺序表的基本顺序(1)建立线性表
来源:互联网 发布:单片机压力传感器 编辑:程序博客网 时间:2024/06/03 22:55
问题:
/* Copyright (c)2015,烟台大学计算机与控制工程学院 All rights reserved. 文件名称:项目1--顺序表的基本顺序(1)建立线性表.cpp 作 者:朱振华 完成日期:2015年9月21日 版 本 号:v1.0 问题描述:目的是要测试“建立线性表”的算法CreateList,为查看建表的结果, 需要实现“输出线性表”的算法DispList。在研习DispList中发现,要输出线性表,还要判断表是否为空,这样,实现判断线性表是否为空的算法ListEmpty成为必要。这样,再加上main函数,这个程序由4个函数构成。main函数用于写测试相关的代码。 输入描述:# 程序输出:用于测试的数字。 */
代码:
#include <stdio.h>#include <malloc.h>#define MaxSize 50 //Maxsize将用于后面定义存储空间的大小typedef int ElemType; //ElemType在不同场合可以根据问题的需要确定,在此取简单的inttypedef struct{ ElemType data[MaxSize]; //利用了前面MaxSize和ElemType的定义 int length;} SqList;//自定义函数声明部分void CreateList(SqList *&L, ElemType a[], int n);//用数组创建线性表void DispList(SqList *L);//输出线性表DispList(L)bool ListEmpty(SqList *L);//判定是否为空表ListEmpty(L)//实现测试函数int main(){ SqList *sq; ElemType x[6]= {5,8,7,2,4,9}; CreateList(sq, x, 6); DispList(sq); return 0;}//下面实现要测试的各个自定义函数//用数组创建线性表void CreateList(SqList *&L, ElemType a[], int n){ int i; L=(SqList *)malloc(sizeof(SqList)); for (i=0; i<n; i++) L->data[i]=a[i]; L->length=n;}//输出线性表DispList(L)void DispList(SqList *L){ int i; if (ListEmpty(L)) return; for (i=0; i<L->length; i++) printf("%d ",L->data[i]); printf("\n");}//判定是否为空表ListEmpty(L)bool ListEmpty(SqList *L){ return(L->length==0);}
运行结果:
知识点总结:
(1)初始化线性表InitList(&L):构造一个空的线性表L
(2)销毁线性表DestroyList(&L):释放线性表L占用的内存空间
(3)判线性表是否为空表ListEmpty(L):若L为空表,则返回真,否则返回假
学习心得:
1.一定要对线性表进行初始化
2.对于线性表的逻辑过程要用笔在纸上画一画
0 0
- 第三周实践1--顺序表的基本顺序(1)建立线性表
- 第三周实践项目1--顺序表的基本运算(2)线性表长度,查找元素
- 第三周实践项目1--顺序表的基本运算(3)插入.删除数据,初始化.销毁线性表
- 第三周实践项目1-顺序表的基本运算
- 第三周项目1、项目2: 顺序表的基本运算、建立“顺序表”算法库
- 第三周实践项目1(2)--顺序表的基本运算插入.删除数据,初始化.销毁线性表
- C/C++ 第三周线性表项目(1) 顺序表的基本运算
- 第三周实践项目~顺序表的基本运算
- 第三周实践项目-顺序表的基本运算
- 线性表的顺序建立
- 第三周上机实践项目1——顺序表的基本运算
- 第三周上机实践—项目1—顺序表的基本运算
- 第三周实践项目1-顺序表的基本运算总结
- 第三周项目(1):顺序表的基本运算
- (第三周项目1)顺序表的基本运算
- 第三周项目(1)-顺序表的基本运算
- 第三周实践项目2-建立顺序表算法库
- 第三周项目1-顺序表的基本运算
- JSP中的session超时手动设置
- 高尔顿钉板概率模型的实现
- [LintCode]找峰值 II
- Spring MVC3在controller和视图之间传递参数的方法
- 第3周 项目1——顺序表的基本运行
- 第三周实践1--顺序表的基本顺序(1)建立线性表
- Delphi 泛型应用
- 回流与重绘:CSS性能让JavaScript变慢?
- xcode 7 让普通用户也可以创建静态库.a和framework
- H5的学习之旅-H5的实体(14)
- Spring AOP transaction management in Hibernate
- 第3周实践项目-3
- java设计模式第13弹--原型模式
- 查询表锁争用情况 table_locks_waited & table_locks_immedaite