博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单的顺序表
阅读量:6418 次
发布时间:2019-06-23

本文共 1619 字,大约阅读时间需要 5 分钟。

什么是顺序表?

顺序表是链表中的一种,顾名思义,使用线性表的顺序存储结构生成的表,叫做顺序表。表中的第一个元素称为首地址,通过首地址,可以访问到表中储存的所有数据,废话不多说,现在上代码。

用c语言创建一个顺序表

代码

#include 
#include
#include
#include
#define Size 4typedef struct Table{
int *head; int length; int size;}table;table initTable(){ table t; t.head = (int*)malloc(Size * sizeof(int));//分配内存空间 t.length = 0;//定义数组长度 t.size = Size;//定义数组大小 return t;}复制代码

顺序表建立好了,接下来就是写多几个函数对顺序表的操作,首先是添加一个元素

//首先定义一个添加进顺序表的函数table addData(table t,int num,int data){	if (t.length+1 
= num-1; i--) {
//这里循环递减把原来的元素挤到后面去 t.head[i + 1] = t.head[i]; } t.head[num-1] = data;//后面插入数据 t.length++;//长度++ return t;}复制代码

遍历所有元素,这里不过多做讲解

void showData(table t){	for (int i = 0; i < t.length; i++)	{		printf("%d", t.head[i]);	}	printf("\n");}复制代码

删除一个元素

table delData(table t,int num){	if (t.length < num)	{		printf("找不到您删除的地址");		return t;	}	for (int i = num; i 

编辑一个元素

table updateData(table t, int num, int data){	if (t.length < num) {		printf("找不到您修改的地址");		return t;	}	t.head[num - 1] = data;	return t;}复制代码

查找一个元素,返回它的位置

int selectData(table t, int data){	for (int i = 0; i < t.length; i++)	{		if (t.head[i] == data)		{			return i + 1;		}	}	return -1;}复制代码

最终运行所写的函数

int main() {    for (int i = 0; i < t1.size; i++) {
//这里我先填入4个值进入顺序表 t1.head[i] = i+1; t1.length++; } showData(t1); t1 = addData(t1, 4, 5); showData(t1); t1 = delData(t1, 4); showData(t1); t1 = updateData(t1, 4, 6); showData(t1); int place; place = selectData(t1, 6); printf("%d", place); system("pause");}复制代码

运行结果

结语

顺序表还是比较简单的一种数据结构,后续我会更新更多的数据结构。喜欢的就动动你可爱的小手点个赞!谢谢啦

转载地址:http://lmvra.baihongyu.com/

你可能感兴趣的文章
发布功能完成
查看>>
用js实现返回上一页
查看>>
因数分解
查看>>
数据结构之队列
查看>>
并发编程(二)
查看>>
[html5]localStorage的原理和HTML5本地存储安全性
查看>>
vc 多行文本框CEdit垂直滚动条定位到最底端
查看>>
basic4android 开发 推送功能
查看>>
centos7安装redis
查看>>
EF 约定介绍
查看>>
web 服务发布注意事项
查看>>
http缓存详解
查看>>
简单内存映射
查看>>
Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web mod
查看>>
3度带6度带区别、中央经线及带号的计算
查看>>
[CentOs7]安装mysql
查看>>
linux 安装redis4.0
查看>>
Codeforces Round #257 (Div. 2)
查看>>
Linux查找文件的相关命令
查看>>
FastDFS 集群 安装 配置
查看>>