当前位置: 首页 > news >正文

【数据结构/C++】线性表_顺序表的基本操作

image.png

#include <iostream>
using namespace std;
#define MaxSize 10
// 1. 顺序表
// 静态分配
typedef struct
{int data[MaxSize];int length; // 当前长度
} SqList;
// 静态分配初始化顺序表
void InitList(SqList &L)
{for (int i = 0; i < MaxSize; i++){L.data[i] = 0;}L.length = 0;
}
// 插入元素 到第 i 个位置
bool ListInsert(SqList &L, int i, int 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;
}
// 删除第 i 个位置的元素
bool ListDelete(SqList &L, int i, int &e)
{if (i < 1 || i > L.length){return false;}// 将被删除的元素赋值给 e,便于输出e = L.data[i - 1];for (int j = i; j < L.length; j++){L.data[j - 1] = L.data[j];}L.length--;return true;
}
// 遍历顺序表
void ListTraverse(SqList L)
{for (int i = 0; i < L.length; i++){cout << L.data[i] << " ";}cout << endl;
}
int main()
{int e;SqList L;InitList(L);ListInsert(L, 1, 1);ListInsert(L, 2, 2);ListInsert(L, 3, 3);ListDelete(L, 2, e);cout << "删除的元素是" << e << endl;ListTraverse(L);return 0;
}

image.png

相关文章:

  • Axios 通过a标签下载文件 跨域下载
  • OpenAI再次与Altman谈判;ChatGPT Voice正式上线
  • Java零基础——SpringMVC篇
  • Spine深入学习 —— 数据
  • RabbitMQ快速入门(简单收发消息)
  • RabbitMQ 的网页界面操作说明
  • Linux-Ubuntu环境下搭建SVN服务器
  • 【开源】基于Vue.js的民宿预定管理系统
  • python web项目导包规范
  • 【ES6.0】- Promise对象
  • idea git将某个分支内的commit合并到其他分支
  • 动态规划学习——子序列问题
  • python之UDP网络应用程序开发
  • selinux-policy-default(2:2.20231119-2)软件包内容详细介绍(2)
  • ⑧【HyperLoglog】Redis数据类型:HyperLoglog [使用手册]
  • 【RocksDB】TransactionDB源码分析
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • Angular6错误 Service: No provider for Renderer2
  • Hibernate最全面试题
  • HTTP那些事
  • JavaScript 奇技淫巧
  • Java方法详解
  • Just for fun——迅速写完快速排序
  • Meteor的表单提交:Form
  • MySQL数据库运维之数据恢复
  • MySQL主从复制读写分离及奇怪的问题
  • Python语法速览与机器学习开发环境搭建
  • react 代码优化(一) ——事件处理
  • sessionStorage和localStorage
  • Shadow DOM 内部构造及如何构建独立组件
  • Vue小说阅读器(仿追书神器)
  • 基于webpack 的 vue 多页架构
  • 计算机在识别图像时“看到”了什么?
  • 京东美团研发面经
  • 前端临床手札——文件上传
  • 前端面试题总结
  • 前端知识点整理(待续)
  • 数据结构java版之冒泡排序及优化
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • ​io --- 处理流的核心工具​
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • #QT(串口助手-界面)
  • (1)STL算法之遍历容器
  • (1)虚拟机的安装与使用,linux系统安装
  • (二)windows配置JDK环境
  • (四)库存超卖案例实战——优化redis分布式锁
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)Linux下编译安装log4cxx
  • (转)关于多人操作数据的处理策略
  • (转载)利用webkit抓取动态网页和链接
  • .Net Core缓存组件(MemoryCache)源码解析
  • .Net 高效开发之不可错过的实用工具
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明