线性表的删除及查找定位删除(完整程序)
来源:互联网 发布:淘宝退货卖家拖延时间 编辑:程序博客网 时间:2024/06/08 17:08
#include<stdio.h>#include<stdlib.h>#define OK 1#define ERROR -1#define MAX_SIZE 100typedef int Status;typedef int ElemType;typedef struct sqlist{ ElemType Elem_array[MAX_SIZE]; int length;}Sqlist;//插入运算Status InsertElem(Sqlist *L,int i,ElemType e){ int j; if(i<0||i>L->length + 1) return ERROR; if(L->length>MAX_SIZE) { printf("线性表溢出!\n"); } for(j = L->length-1;j>=i-1;j--) { L->Elem_array[j+1] = L->Elem_array[j]; } L->Elem_array[i-1] = e; L->length++; return OK;}void PrintList(Sqlist *L){ int i; for(i = 0;i<L->length;i++) { printf("%d\n",L->Elem_array[i]); }}Status CreatList(Sqlist *L){ int len; int i; //ElemType q; printf("请输入想要创建表的长度:"); scanf("%d",&len); if(len<0||len>MAX_SIZE) return ERROR; L->length = len; for(i = 0;i<len;i++) { scanf("%d",&L->Elem_array[i]); }}//删除第i个元素Status Delete(Sqlist *L,int i){ int j; ElemType x; if(L->length==0) { printf("表为空!\n"); return ERROR; } else if(i<0||i>L->length + 1) { printf("要删除的元素不存在!"); return ERROR; } else { x=L->Elem_array[i-1]; for(j=i;j<L->length;j++) { L->Elem_array[j-1] = L->Elem_array[j]; } L->length--; return(x); }}//查找定位删除操作Status Locate_Delete(Sqlist *L,ElemType x){ int i; int j; if(L->length==0) { printf("表为空!\n"); return ERROR; } for(i = 0;i<L->length;i++) { if(L->Elem_array[i]==x) { break; } } if(i<L->length) { for(j = i;j<L->length;j++) { L->Elem_array[j] = L->Elem_array[j+1]; } L->length--; } else if(i>L->length) {printf("要删除的元素不存在!\n");return ERROR; }}void main(){ Sqlist l; l.length = 0; //int l->Elem_array[MAX_SIZE]; //InsertElem(&l,1,2); //InsertElem(&l,2,2); //InsertElem(&l,3,2); CreatList(&l);printf("线性表的值如下:\n"); PrintList(&l); InsertElem(&l,3,2);printf("插入数值后的线性表如下:\n"); PrintList(&l); Delete(&l,1); printf("删除数值后的线性表如下:\n"); PrintList(&l); Locate_Delete(&l,2); printf("定位删除数值后的线性表如下:\n"); PrintList(&l);}
0 0
- 线性表的删除及查找定位删除(完整程序)
- 线性表的插入,删除,合并,查找
- 线性表的插入、查找与删除
- 线性表的建立,删除,查找
- 线性表的输入输出插入删除查找(顺序表示)
- 线性表的创建与删除程序
- 线性表的创建、插入、删除和定位
- 基于线性表:编写26个字母按特定字母值插入或删除的完整程序
- 线性表的顺序储存结构 初始化、查找、删除、插入
- 线性链表的查找插入删除算法
- 线性表建立、插入、删除、查找应用
- 顺序表的实现(包含插入,删除,及查找)
- 线性表的操作(完成表的建立,插入,删除,排序,销毁,查找 )
- 大二 第一次数据结构作业 (数组的排序,删除,查找,插入,合并)(线性表)
- 线性表的基本操作:新建,插入,删除,查找(C语言版)
- 线性表的输入输出查找删除插入(链式,头插入)
- 线性表的输入输出查找删除插入(链式,尾插入)
- C/C++学习(六)线性表的插入、删除和查找
- c#控制台正则匹配
- Scrum到底怎么玩儿?
- 零碎知识笔记
- Ubuntu 16 安装php 5.5 的方法
- Codeforces 682C C. Alyona and the Tree (DFS)
- 线性表的删除及查找定位删除(完整程序)
- Method swizzling
- 日常小结-xml编程(CRUD)
- iOS CocoaPods 的安装流程
- Android 实现沉浸式状态栏效果(systembartint库)
- 第一次盲打测试
- GestureDetector_SimpleOnGestureListener
- 边做边学Python Flask Web开发(4)-- 使用Jinjia2模板(上)
- iOS 图片保存到本地相册