顺序表基本操作算法——基础代码(C语言)

article/2025/9/14 23:50:01

 创建一个顺序表(数据元素个数为5),
输出顺序表中的所有数据元素
查找第3个位置上的元素
查找元素15是否在顺序表中,如果在,请输出该元素在顺序表中的位置
在顺序表中的第1个位置插入数据0
删除刚刚插入的元素
输出顺序表中的所有数据元素

#include <stdio.h>
#define MAXSIZE 100
typedef struct {int elem[MAXSIZE];int last;
} SeqList;
void InitList(SeqList*L) {L->last=-1;
}
void CreateList(SeqList*L,int n) {int i;printf("请输入%d个整数: ",n);for(i=0; i<n; i++)scanf("%d",&L->elem[i]);L->last=i-1;
}
int GetData(SeqList*L,int i,int*x) {if(i<1||i>L->last+1)return 0;else {*x=L->elem[i-1];return 1;}
}
int Locate(SeqList*L,int e) {int i=0;while(i<=L->last&&L->elem[i]!=e);i++;if(i>L->last)return 0;elsereturn i+1;
}
int InsList(SeqList*L,int i,int e) {int j;if(L->last>=MAXSIZE-1) {printf("顺序表已满");return -1;}if(i<1||i>L->last+2) {printf("插入位置出错");return 0;}for(j=L->last; j>=i-1; j--)L->elem[j+1]=L->elem[j];L->elem[i-1]=e;L->last++;return 1;
}int DelElem(SeqList*L,int i,int*e) {int j;if(L->last==-1) {printf("顺序表为空");return 0;}if(i<1||i>L->last+1) {printf("不存在第i个元素");return 0;}*e=L->elem[i-1];for(j=i; j<=L->last; j++)L->elem[j-1]=L->elem[j];L->last--;return 1;
}void DispList(SeqList*L) {int i;for(i=0; i<=L->last; i++)printf("%5d",L->elem[i]);
}int main() {SeqList L;int n,i,x,loc;printf("请输入建立线性表的个数: ");scanf("%d",&n);CreateList(&L,n);printf("建立的线性表为: ");DispList(&L);printf("请输入要查看表中位置: ");scanf("%d",&i);if(GetData(&L,i,&x))printf("当前线性表第%d个元素的值为:%d\n",i,x);elseprintf("输入的位置错误");printf("请输入要查找的元素值为:");scanf("%d",&x);loc=Locate(&L,x);if(loc)printf("查找元素值为%d的位置为:%d\n",x,loc);elseprintf("该表中无此元素");printf("请输入要插入的位置:");scanf("%d",&i);printf("请输入要插入的元素值:");scanf("%d",&x);if(InsList(&L,i,x)) {printf("已成功在第%d的位置上插入%d,插入后的线性表为:\n",i,x);DispList(&L);} elseprintf("输入插入的参数错误");printf("请输入要删除元素的位置:");scanf("%d",&i);if(DelElem(&L,i,&x)) {printf("已成功在第%d的位置上删除%d,删除后的线性表为:\n",i,x);DispList(&L);} elseprintf("\n输入删除的参数错误");
}

运行结果如下

 


http://chatgpt.dhexx.cn/article/hZNRBLMH.shtml

相关文章

顺序表的十个基本操作(全)

目录 一、初始化顺序表 二、插入 三、删除 3.1 按位删除 3.2 按数删除 四、查找 4.1 按位查找 4.2 按数查找 五、修改 5.1 按位修改 5.2 按数修改 六、逆置 七、排序 八、按序插入 九、按序合并 十、最小值 完整代码 一、初始化顺序表 初始化并一个顺序表&am…

数据结构—顺序表基本操作的实现(C语言)

前言 本文介绍线性表顺序存储时基本操作的实现&#xff0c;包括顺序表的结构定义、初始化、插入、删除、销毁、显示、清空、判空、求长度、查找&#xff0c;以及线性表的合并。 主要参考&#xff1a;严蔚敏“数据结构及应用算法教程”教材 代码如下 #include <stdio.h>…

顺序表的基本操作(超详细)

1.顺序表的定义 使用结构体来构造一个顺序表。 typedef struct {int length;//当前顺序表长度int Maxsize;//顺序表最大长度int* data;//定义顺序表中元素类型的数组指针 }SqList;2.顺序表的初始化 顺序表的初始化是使用动态分配数组空间方式构造一个空的线性表。 #include&…

多组比较的非参数检验——K-W检验

作者&#xff1a;丁点helper 来源&#xff1a;丁点帮你 前面我们已经讲完两组比较的非参数检验&#xff0c;类似t检验与方差分析&#xff0c;当比较的数据超过两组时&#xff0c;我们就需要换一个方法了。 非参数K-W检验&#xff0c;相比前文讲解的Mann-Whitney 检验就是这样…

推断统计:参数估计和假设检验

目录 1、总体、个体、样本和样本容量    1&#xff09;总体、个体、样本和样本容量的概念    2&#xff09;本文章使用的相关python库   2、推断统计的概念    1&#xff09;推断统计的概念    2&#xff09;为什么要进行推断统计&#xff1f;   3、参数估计(点…

非参数检验之符号检验、Wilcoxon符号秩检验、游程检验

目录 一、符号检验 例2.1下面是世界上71个大城市的花费指数(包括租金)按递增次序排列如下(这里上海是44位&#xff0c;其指数为63.5&#xff09;&#xff1a; R代码&#xff1a; 二、Wilcoxon符号秩检验 例2.3下面是10个欧洲城镇每人每年平均消费的酒类相当于纯酒精数&…

SPSS非参数检验

系列文章目录 SPSS描述统计 SPSS均值检验 SPSS方差分析 文章目录 系列文章目录前言1 非参数检验提出的背景与特点1.1 背景1.2 特点 2 SPSS分析-非参数检验菜单中的相关功能2.1 卡方检验2.1.1 概述2.1.2 操作流程2.1.3 实例操作 2.2 二项分布检验2.2.1 概述2.2.2 操作流程2.2.3…

入门必学 | R语言参数检验之t检验与方差分析

T检验与方差分析 背景介绍R语言实操过程--t test单样本t检验两个独立样本t检验配对t检验 R语言实操过程--anova单因素方差分析多重比较 双因素方差分析 完整代码 之前与大家分享了数据的独立性、正态性、方差齐性检验。如果还不清楚&#xff0c;大家可以通过这篇推文来学习和理…

R语言对数据进行非参数检验

假设检验&#xff1a;参数检验运用样本的统计量来估计总体的参数&#xff0c;如用样本均值估计总体均值&#xff0c;用样本标准差估计总体标准差。 非参数检验则不考虑数据的具体值&#xff0c;而更多地运用了数据大小排序的信息&#xff0c;因此不可能以此估计总体的参数 1.原…

SPSS参数检验、非参数检验、方差分析

参数检验、非参数检验、方差分析 1.导语2.参数检验2.1 数据分布2.1.1 正态分布1.有总体数据2.没有总体数据&#xff0c;用样本3.统计参数 2.1.2 指数分布1.有总体数据2.没有总体数据&#xff0c;样本3.统计参数 2.2 单样本t检验2.2.1 单样本t检验目的2.2.2 SPSS操作 2.3 两独立…

SPSS学习笔记(四)非参数检验

目录 一、配对&#xff1a;Wilcoxon符号-秩检验 分析 操作 结果及分析 二、独立样本&#xff1a;Mann-Whitney U检验 分析 操作 结果及分析 三、单因素ANOVA&#xff1a;Kruskal-Wallis检验 分析 操作 结果及分析 一、配对&#xff1a;Wilcoxon符号-秩检验 分析&a…

R语言非参数检验多重比较

本文首发于公众号&#xff1a;医学和生信笔记&#xff0c;完美观看体验请至公众号查看本文。 医学和生信笔记&#xff0c;专注R语言在临床医学中的使用&#xff0c;R语言数据分析和可视化。 之前介绍了多个样本均数的多重比较&#xff0c;今天说说kruskal-Wallis H检验后的多重…

什么是非参数检验?应该如何操作与分析?

检验问题可划分为两大类&#xff1a;参数检验和非参数检验&#xff0c;其中总体分布的具体函数形式的前提下&#xff0c;只是其中若干个参数未知称为参数检验&#xff0c;否则称为非参数检验。 一、研究场景 非参数检验用于研究定类数据与定量数据之间的关系情况。例如研究人…

【日常】矩阵正态分布参数检验问题

最近给凯爹做的一个苦力活&#xff0c;统计检验这个东西说实话也挺有趣&#xff0c;跟算法设计一样&#xff0c;好的检验真的是挺难设计的&#xff0c;就有近似算法的那种感觉&#xff0c;检验很难保证size和power都很理想&#xff0c;所以就要做tradeoff&#xff0c;感觉这个假…

参数估计与假设检验

推断统计&#xff1a;研究如何利用样本数据来推断总体特征 描述统计&#xff1a;描述一组数据的特征 参数估计&#xff1a;利用样本信息估计总体特征 假设检验&#xff1a;利用样本信息判断对总体的假设是否成立 一.参数估计 就是对于总体指标的估计 估计&#xff1a;根据…

第4章 Stata参数检验

目录 4.1单一样本T检验 案例延伸 4.2独立样本T检验 案例延伸 1.改变置信水平 2.在异方差假定条件下进行假设检验 4.3配对样本T检验 案例延伸 1.改变置信水平 4.4单一样本方差的假设检验 案例延伸 4.5双样本方差的假设检验 参数检验&#xff08;Parameter Test&…

非参数检验——Wilcoxon 检验 Friedman 检验与 Nemenyi 后续检验

最近看论文&#xff0c;看到了Wilcoxon signed-rank test&#xff08;符号秩检验&#xff09;&#xff0c;咱也不知道是个啥&#xff0c;就学习了一下&#xff0c;这里做一下笔记&#xff0c;方便以后查阅。 非参数检验——Wilcoxon 检验 非参数检验概念非参数检验和参数检验的…

SPSS之“参数检验”

目录 简介单样本t检验两独立样本t检验两配对样本t检验 简介 <!-主要作为个人的笔记&#xff0c;和操作步骤的查询-->参数检验(比价均值)是根据样本数据推断总体特征的方法。这种推断通常在以下两种情况下进行&#xff1a;参数检验&#xff1a;总体分布(多为正态分布)已知…

参数检验和非参数检验(结合SPSS分析)

文章目录 假设检验参数检验平均值检验单样本t检验两独立样本t检验配对样本t检验 非参数检验卡方检验单样本K-S检验两独立样本的非参数检验多个独立样本的非参数检验两配对样本检验多匹配样本的非参数检验 假设检验 概念&#xff1a;是一种根据样本数据来推断总体的分布或均值、…

参数与非参数检验:理解差异并正确使用

数据科学是一个快速发展的领域&#xff0c;它在很大程度上依赖于统计技术来分析和理解复杂的数据集。这个过程的一个关键部分是假设检验&#xff0c;它有助于确定从样本中获得的结果是否可以推广到总体。 在这篇文章中&#xff0c;我们将探讨参数与非参数检验之间的区别&#…