顺序表
来源:互联网 发布:刷花呗的淘宝店铺 编辑:程序博客网 时间:2024/06/16 11:15
/**顺序表上的基本操作*/#include <iostream>using namespace std;#define MAX_LIST_SIZE100typedef int DataType;typedef struct{DataType data[MAX_LIST_SIZE];int length;}SeqList;//顺序表的基本运算void InitList(SeqList* L);bool InsertNode(SeqList* L, DataType x, int i);//将结点x插入L顺序表的第i个结点位置上bool DeleteNode(SeqList* L, int i);//从L顺序表中删除第i个结点bool GetNode(SeqList* L, int i, DataType* pDT);//得到指定位置的元素,并存入pDT中void ClearList(SeqList* L);//清空表bool IsEmpty(SeqList* L);//判断表是否为空int GetListLength(SeqList* L);//获得L顺序表的长度void PrintList(SeqList* L);//打印表中元素int main(){//SeqList cout<<"SeqList test"<<endl;SeqList l;InitList(&l);for (int i = 0;i < 10; i++){InsertNode(&l, i, i+1);}PrintList(&l);cout << "SeqList Length= " << GetListLength(&l) <<endl;cout<<"after delete pos=5:"<<endl;DeleteNode(&l, 5);PrintList(&l);cout << "SeqList Length= " << GetListLength(&l) <<endl;cout<<"after clear:"<<endl; ClearList(&l);cout<<"mySeqList is empty? ["<<(IsEmpty(&l) ? "Y" : "N")<<"]"<<endl;return 0;}void InitList(SeqList* L){L->length = 0;}bool InsertNode(SeqList* L, DataType x, int i){if (L->length >= MAX_LIST_SIZE)return false;//顺序表已经满了if (i < 1 || i > L->length+1)return false;//指定的添加位置错误for (int j = L->length; j > i-1; j--){L->data[j] = L->data[j-1];}L->data[i-1] = x;L->length++;return true;}bool DeleteNode(SeqList* L, int i){if (i < 1 || i > L->length)return false;//指定的添加位置错误for (int j = i; j < L->length;j++){L->data[j-1] = L->data[j];}L->length--;return true;}bool GetNode(SeqList* L, int i, DataType* pDT){if (i < 1 || i > L->length)return false;//指定的添加位置错误*pDT = L->data[i-1];return true;}void ClearList(SeqList* L){L->length = 0;}bool IsEmpty(SeqList* L){return (L->length == 0);}int GetListLength(SeqList* L){return L->length;}void PrintList(SeqList* L){for (int i = 0; i < L->length; i++){cout<<L->data[i]<<" ";}cout<<endl;}
阅读全文
0 0
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 顺序表
- 用人工智能"写诗" 已成为现实【智库2861】
- WCF 运行的时候 报错 提示 “ 同一个协定中不能存在两个名称相同的操作”
- 当Kotlin遇见RxJava多数据源
- java实现发送手机短信
- java根据文件头判断文件格式
- 顺序表
- php与nginx结合搭建
- 000024:赋值给变量和常量并通过输出测试范围
- 导致烂代码的35个恶习
- Grails GORM查询
- 动态联编和静态联编
- Java 性能测试工具 JMH
- nginx系统真正有效的图片防盗链完整设置详解
- 高可用(HA)集群原理概述