线性表的顺序表示(顺序表)

静态分配:

#include <stdbool.h>
#include <stdio.h>typedef int ElementType;#define MaxSize 50
typedef struct {ElementType data[MaxSize];int length;
}SqList;//初始化
//SqList L;
void InitList(SqList L) {L.length = 0;
}//插入
bool ListInsert(SqList L, int i, ElementType e) {if (i < 1 || i > L.length+1)return false;if (L.length >= MaxSize)return false;for (int j = L.length; j >= i; j--)L.data[j] = L.data[j-1];L.data[i-1] = e;L.length++;return true;
}//删除
bool ListDelete(SqList L, int i, ElementType e) {if (i < 1 || i > L.length)return false;e = L.data[i-1];for (int j = i; j < L.length; j++)L.data[j-1] = L.data[j];L.length--;return true;
}//按值查找(顺序查找)
int LocateElem(SqList L, ElementType e) {int i;for (i = 0; i < L.length; i++)if (L.data[i] == e)return i + 1;return 0;
}

动态分配:

typedef int ElementType;#define InitSize 100
typedef struct {ElementType *data;int MaxSize, length;
}SeqList;//初始化
void InitList(SeqList L) {L.data = (ElementType *)malloc(InitSize*sizeof(ElementType));L.length = 0;L.MaxSize = InitSize;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/764528.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

主机OS/390汇编程序入门篇

主机OS/390 汇编程序曾经风靡一时。它曾应用于很多商业应用系统&#xff0c;特别是联机应用系统。随着高级语言的普及&#xff0c;以及计算机硬件资源的成本日趋下降&#xff0c;汇编语言不再是人们开发的首选&#xff0c;但是汇编语言还是有它的优点&#xff0c;现在仍然有着它…

SQLiteC/C++接口详细介绍sqlite3_stmt类(十二)

返回&#xff1a;SQLite—系列文章目录 上一篇&#xff1a;SQLiteC/C接口详细介绍sqlite3_stmt类&#xff08;十一&#xff09; 下一篇&#xff1a; SQLiteC/C接口详细介绍sqlite3_stmt类&#xff08;十三&#xff09; 48、sqlite3_stmt_isexplain sqlite3_stmt_is…

2024蓝桥杯每日一题(单调队列)

备战2024年蓝桥杯 -- 每日一题 Python大学A组 试题一&#xff1a;单调栈 试题二&#xff1a;滑动窗口 试题三&#xff1a;子矩阵 试题四&#xff1a;最大子序和 试题一&#xff1a;单调栈 【题目描述】 给定一个长度为 N 的整数数列&#xff0c;输出每…

jvm提供的远程调试 简单使用

JVM自带远程调试功能 JVM远程调试&#xff0c;其实是两个虚拟机之间&#xff0c;通过socket通信&#xff0c;达到远程调试的目的&#xff1b; 前提 确保本地和远程的网络是开通的&#xff1b; 本地操作 远程操作 在启动命令参数中 把上面的内容复制进去

【3GPP】【核心网】【4G】4G手机接入过程,手机附着过程(超详细)

1. 4G手机接入过程&#xff0c;手机附着过程 附着&#xff08;Attach&#xff09;&#xff1a; 终端在PLMN中注册&#xff0c;从而建立自己的档案&#xff0c;即终端上下文 进行附着的三种情况&#xff1a; ①终端开机后的附着&#xff0c;初始附着 ②终端从覆盖盲区返回到…

解决用POI库生成的word文件中的表格在python-docx无法解析的问题

问题背景 用apache-poi生成word文件中表格&#xff0c;在使用python-docx库解析时报错&#xff1a; 问题分析 1. word文档本质上是一个rar压缩包&#xff0c;用winrar解析后如下&#xff1a; 2. 查看document.xml&#xff0c;可以看到table元素下面是没有<w:tblGrid>这…

ARPACK-ng安装教程

ARPACK 是一个用于解决大型稀疏或稠密特征值问题的软件包。 arpack-ng是目前方便获得的arpack的替代版本。主页地址为https://github.com/opencollab/arpack-ng 安装方法 Using autotools 使用Autotools&#xff0c;只要输入工程中的目标文件、依赖文件、文件目录等信息&…

Vue3快速上手(十七)Vue3之状态管理Pinia

一、简介 Pinia官网:https://pinia.vuejs.org/zh/ 从官网截图里可以直接看到,pinia是一个vuejs的状态(数据)管理工具。功能性同vuex。logo是小菠萝。它是一个集中式状态管理工具。就是将多个组件共用的数据管理起来,重复利用。有点类似缓存的意思。 二、Pinia环境搭建 …

【LVGL-按钮按钮矩阵部件】

LVGL-按钮&按钮矩阵部件 ■ LVGL-按钮部件■ 按钮部件&#xff1a; 点击三个按钮一个回调函数修改label值。 ■ LVGL-按钮矩阵部件■ 示例一&#xff1a;按钮换行&#xff0c;和宽度设置。■ 示例二&#xff1a;设置按钮宽度为2倍■ 示例三&#xff1a;获取点击的按钮下标&…

大数据主要组件HDFS Iceberg Hadoop spark介绍

HDFSIceberghadoopspark HDFS 面向PB级数据存储的分布式文件系统&#xff0c;可以存储任意类型与格式的数据文件&#xff0c;包括结构化的数据以及非结构化的数据。HDFS将导入的大数据文件切割成小数据块&#xff0c;均匀分布到服务器集群中的各个节点&#xff0c;并且每个数据…

服务器感染了.kat6.l6st6r勒索病毒,如何确保数据文件完整恢复?

导言&#xff1a; 随着信息技术的不断发展&#xff0c;网络安全问题愈发凸显&#xff0c;其中勒索病毒成为了一种常见的网络威胁。近期&#xff0c;一种名为.kat6.l6st6r的勒索病毒引起了广泛关注。该病毒通过加密用户文件并要求支付赎金的方式&#xff0c;给受害者带来了巨大…

Gartner发布网络安全应用生成式AI指南:应用生成增强功能提升企业网络安全能力和效率的三个领域及9个实例

生成增强功能是专门为提高知识工作者的生产力、解决网络安全技能短缺问题并降低大型语言模型带来的风险而构建的。安全和风险管理领导者通过在运营中采用生成增强来提高团队的能力。 主要发现 与其他人工智能实现相比&#xff0c;生成式人工智能 (GenAI)解决方案&#xff0c;特…

CSP认证——202012-1 期末预测之安全指数

题目背景 期末要到了&#xff0c;小菜同学找到了自己的好朋友顿顿&#xff0c;希望可以预测一下自己这学期是否会挂科。 题目描述 首先&#xff0c;顿顿选取了如“课堂表现”、“自习时长”、“作业得分”、“社团活动参与度”等 项指标作为预测的依据。 然后&#xff0c;顿…

绿色节能|AIRIOT智慧建材能耗管理解决方案

建材供应是建筑业不可或缺的一个重要环节&#xff0c;在环保和企业可持续发展的双重需求下&#xff0c;建材生产商对建材生产过程中的能耗掌握和能耗管理尤其关注。但在实际生产和运营过程中&#xff0c;传统的建材能耗管理方式往往存在如下痛点&#xff1a; 用户管理权限不完善…

汽车ECU的虚拟化技术(五) -- 对MCU虚拟化实现难点的思考

目录 1.概述 2.虚拟化软件的难点 2.1 虚拟化中的中断处理 2.2 虚拟ECU的通信 3.小结 1.概述 在上面文章里汽车ECU的虚拟化技术(四) -- 对MCU虚拟化实现难点的思考-CSDN博客&#xff0c;解了OEM面临新的电子电气架构下的集成难点&#xff0c;引入了hypervisor以及VM调度机制…

react中使用google map展示地图

1. 安装插件 google-maps-react npm install google-maps-react --save 2. 使用 import React, { Component } from "react"; import { Map, GoogleApiWrapper, Marker } from "google-maps-react";class MapContainer extends Component {render() {co…

ARM-Linux 开发板下安装编译 OpenCV 和 Dlib

安装 OpenCV 和 Dlib 不像在 x86 平台下那样简单&#xff0c;用一句命令就可以自动安装完。而在 ARM 平台中许多软件都需要自行下载编译&#xff0c;且还有许多问题&#xff0c;本篇文章就是记录在 ARM 平台下载 OpenCV 踩过的坑。 硬件环境&#xff1a; RK3568 Ubuntu20.04…

全国大学生数学建模大赛备赛——相关系数的求解(皮尔逊(pearson)、斯皮尔曼(spearman)、肯德尔(kendall)相关系数)

相关系数是用来衡量两个变量之间线性相关程度的指标。它的取值范围在-1到1之间&#xff0c;当相关系数为1时表示两个变量完全正相关&#xff08;即一个变大另一个也变大&#xff09;&#xff0c;当相关系数为-1时表示两个变量完全负相关&#xff08;即一个变大另一个变小&#…

【Flutter】数据库操作的基本介绍

上一篇博文介绍了Flutter 如何读取 excel 文件&#xff0c;这一篇我们来介绍如何操作数据库。 Flutter 提供了三种数据持久化方式&#xff1a; 将 KV 值存储到硬盘&#xff1a;shared_preferences读取和写入文件&#xff1a;Read and write files数据库&#xff1a;sqflite。…

实现节流防止连点方法以及调用方式

1、新建throttle.js文件&#xff0c;复制该代码 export function throttle(fn, delay) { let latestTime 0 return function() { const _this this const _arguments arguments const nowTime new Date().getTime() if (nowTime - latest…