第06话:判断线性表是否为空与置空操作
2012-07-03 00:00
239 查看
把ADT里谈及的操作都过一遍吧。前面谈到了初始化、创建、插入、遍历等操作,现在就来看看如何判断一个线性表是否为空、还有把一个线性表置为空的操作吧。
ADT里判断线性表是否为空的函数设计如下:bool listEmpty(L); //判断一个线性表是否为空,不修改表传值
其实就是判断表的长度是否为0而已。将表置空的函数就更简单了,直接将长度赋值为0即可。
函数调用:
注意这里是使用地址传值,毕竟要对表进行清空操作,所以这里不用值传递。
这两个函数如果要测试的话可以自行加入到上一篇的完整可运行代码里。
第01话:线性表的概念与定义
第02话:线性表的抽象数据类型ADT定义
第03话:线性表的顺序存储结构
第04话:线性表的初始化
第05话:线性表的遍历、插入操作
第06话:判断线性表是否为空与置空操作
第07话:线性表的查找操作
第08话:线性表删除某个元素
线性表顺序存储的优缺点
线性表链式存储结构的由来与基本概念
单链表的头指针、头结点与首元结点
单链表的结构体定义与声明
单链表的初始化
单链表的插入与遍历操作
单链表的删除某个元素的操作
获取单链表中的指定位置的元素
查找某数在单链表中的位置
用头插法实现单链表整表创建
用尾插法实现单链表整表创建
将单链表重置为空表
单链表反转/逆序的两种方法
单链表反转/逆序的第三种方法
求单链表倒数第N个数
用标尺法快速找到单链表的中间结点
如何判断链表是否有环的存在
单链表建环,无环链表变有环
删除单链表中的重复元素
本文地址:http://www.nowamagic.net/librarys/veda/detail/2203,欢迎访问原出处。
ADT里判断线性表是否为空的函数设计如下:bool listEmpty(L); //判断一个线性表是否为空,不修改表传值
/* 初始条件:顺序线性表L已存在。操作结果:若L为空表,则返回TRUE,否则返回FALSE */ Status ListEmpty(SqList L) { if(L.length==0) return TRUE; else return FALSE; }
其实就是判断表的长度是否为0而已。将表置空的函数就更简单了,直接将长度赋值为0即可。
/* 初始条件:顺序线性表L已存在。操作结果:将L重置为空表 */ Status ClearList(SqList *L) { L->length=0; return OK; }
函数调用:
i=ClearList(&L); printf("清空L后:L.length=%d\n",L.length);
注意这里是使用地址传值,毕竟要对表进行清空操作,所以这里不用值传递。
这两个函数如果要测试的话可以自行加入到上一篇的完整可运行代码里。
延伸阅读
此文章所在专题列表如下:第01话:线性表的概念与定义
第02话:线性表的抽象数据类型ADT定义
第03话:线性表的顺序存储结构
第04话:线性表的初始化
第05话:线性表的遍历、插入操作
第06话:判断线性表是否为空与置空操作
第07话:线性表的查找操作
第08话:线性表删除某个元素
线性表顺序存储的优缺点
线性表链式存储结构的由来与基本概念
单链表的头指针、头结点与首元结点
单链表的结构体定义与声明
单链表的初始化
单链表的插入与遍历操作
单链表的删除某个元素的操作
获取单链表中的指定位置的元素
查找某数在单链表中的位置
用头插法实现单链表整表创建
用尾插法实现单链表整表创建
将单链表重置为空表
单链表反转/逆序的两种方法
单链表反转/逆序的第三种方法
求单链表倒数第N个数
用标尺法快速找到单链表的中间结点
如何判断链表是否有环的存在
单链表建环,无环链表变有环
删除单链表中的重复元素
本文地址:http://www.nowamagic.net/librarys/veda/detail/2203,欢迎访问原出处。
相关文章推荐
- JS保存和删除cookie操作 判断cookie是否存在
- Activity中异步操作showDialog异常解决方法:判断Ay是否结束
- Java文件夹操作,判断多级路径是否存在,不存在就创建(包括windows和linux下的路径字符分析),兼容Windows和Linux
- 9-18 ASP第二讲实现数据的真实操作,从txt文件中读取进行校对,判断登陆是否成功
- Problem A: 判断操作是否合法(栈和队列)
- 二叉树相关操作(先序建立二叉树、求子节点数量,判断是否为平衡二叉树,先序遍历,中序遍历,后序遍历)
- C# DataTable 操作(判断列是否存在)
- 用于在存储过程中 根据@@error 判断是否要提交事务和提示操作是否成功,便于异常处理
- 权限控制-JS判断是否有权限进行操作跳转页面需要加target
- JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
- c# 注册表操作,创建,删除,修改,判断节点是否存在
- C语言文件操作 fopen, fclose, mkdir(打开关闭文件,建文件夹,判断文件是否存在可读或可写)
- 类库------对一些字符串进行操作的类1.判断输入是否数字2.截取字符串函数3.过滤输入信息4.生成随机数5.生成验证码图片6.获取汉字第一个拼音7.半角转全角8.全角转半角
- jdbcTemplate在执行插入操作的时候如何判断是否插入成功?
- 判断栈操作序列是否合法
- C++模板,判断是否存在成员函数,实现差异化操作
- 数据结构:单链表操作之如何判断链表是否带环及相关操作
- c# 注册表操作,创建,删除,修改,判断节点是否存在
- Java学习笔记72. 操作线程 -- 判断线程是否启动
- 判断某个窗口是否是活动窗口(当前正在使用、操作的窗口)