专业的会议网站建设西安二手房出售信息

pingmian/2026/1/23 23:47:50/文章来源:
专业的会议网站建设,西安二手房出售信息,凡科网登录入口注册,电商平台营销策划方案本章会介绍的知识点如下图#xff1a; 1#xff1a; 顺序表的概念#xff1a;顺序表是用一段物理地址连续的存储单元依次存储数据的线性结构#xff0c;通常我们使用数组来表示#xff0c;对数组进行增删查改。 顺序表的结构#xff1a;逻辑结构与物理结构都是内存中一块…本章会介绍的知识点如下图 1 顺序表的概念顺序表是用一段物理地址连续的存储单元依次存储数据的线性结构通常我们使用数组来表示对数组进行增删查改。 顺序表的结构逻辑结构与物理结构都是内存中一块连续开辟的空间都是11对应的线性结构。 2 顺序表的两种定义方式静态的顺序表与动态的顺序表一般情况下我们很少会用静态的顺序表因为静态的顺序表会将空间固定导致如果我们使用顺序表的时候可能会浪费很多的空间也可能在我们增容的时候会出现空间不够的情况这种情况下如果我们还是在继续使用的话那么数组将会越界这种情况是error的。 两种定义顺序表的方式代码如下 静态的顺序表         typedef int SqListDataType;//这里是给我们的顺序表元素的类型起个名字 // 假设元素是其他类型我们就可以修改这里 //静态的 struct SqList1 {SqListDataType arr1[1000];//开辟了一个整形的数组int size;//用来记录顺序表当前使用了多少的空间 }; 动态的顺序表 struct SqList2 {SqListDataType* arr2;int size;int Capacity;//用来记录当前数组开辟了多少个空间 }; 在这两种结构中通常我们是会选择动态的顺序表来管理数据的。 3顺序表的接口实现 我们最终选择这个定义的顺序表  1这个接口的定义是应为当我们在增加元素的时候我们所存储的元素会变多总有一种情况下我们空间会慢所以这时候我们就需要扩容使用了realloc这个函数扩容有两种情况一种是原地扩一种是换个空间扩。不管怎么样我们都定义一个空间用来存储新开辟的地址让后在给ps //检查容量的代码 void check_capacity(SqList* ps) {assert(ps);//空间不够扩容,一次扩两倍if (ps-Capacity ps-size){SqListDataType* tmp(SqListDataType*)realloc(ps-arr, (ps-Capacity)* 2*sizeof(SqListDataType));if (tmp NULL){perror(realloc fail);exit(-1);}else{printf(扩容成功\n);ps-arr tmp;ps-Capacity * 2;}}} 2头插思路先检查空间是否足够在从后往前移动元素将第一个位置给空出来最后在添加元素即可。 void PushFrontSqList(SqList* ps, SqListDataType x) {//先检查空间够不够,空间不够扩容check_capacity(ps);//先判断空间是否满了//先移动元素int end ps-size - 1;while (end 0){ps-arr[end 1] ps-arr[end];end--;}ps-arr[0] x;ps-size; } 上述代码的意思如下图 3尾插思路这个挺简单的我们只要在size位置插入即可size在即可这里要注意的就是我们插入要以数组的下标。 代码 void PushBackSqList(SqList* ps, SqListDataType x) {assert(ps);check_capacity(ps);ps-arr[ps-size] x;ps-size;//SqListInsert(ps, ps-size, x); }4头删思路我们首先得判断顺序表是否有元素如果有的话才能进行删除我们只需要遍历数组从前往后将后一个元素移动到前一个就行这里需要注意的就是我们移动时位置的不同可能导致代码的不一样而我的代码是从第一个开始所以我最后的位置因该是size-2处然后size--就可以了。 代码 void PopFrontSqList(SqList* ps) {assert(ps);assert(ps-size 0);int i 0;for (i 0; i ps-size - 1; i){ps-arr[i] ps-arr[i 1];}ps-size--; } 5尾删思路这个挺简单的首先还是得判断顺序表是否存在元素如果有将size--就行了。 代码 void PopBackSqList(SqList* ps) {assert(ps);assert(ps-size 0);ps-size--; } 6顺序表得查找思路遍历数组就行了如果存在则返回下标如果不存在我们返回-1. 代码 int FindSqList(SqList* ps, SqListDataType x) {assert(ps);//防止ps没有意义//思路遍历顺序表找int i 0;for (i 0; i ps-size; i){if (ps-arr[i] x){return i;}}//未找到printf(未找到\n);return -1; } 7顺序表插入思路在pos位置处插入一个元素pos为下标首先先我们得判断pos是否存在如果存在我们先从前往后将元素向后移动然后在pos位置处插入即可。 代码 void SqListInsert(SqList* ps, int pos, SqListDataType x) {assert(ps);assert(pos 0 pos ps-size);check_capacity(ps);int end ps-size - 1;while (end pos){ps-arr[end 1] ps-arr[end];end--;}ps-arr[pos] x;ps-size; } 图 8顺序表的删除思路先判断pos是否在顺序表中我们只要从前完后移动pos后面的元素即可然后我们在把size-- 代码 void SqListErase(SqList* ps, int pos) {assert(ps);assert(pos 0 pos ps-size);int i pos;for (i pos; i ps-size - 1; i){ps-arr[i] ps-arr[i 1];}ps-size--; } 9顺序表的修改思路先判断pos是否在顺序表中然后在根据数组随机访问的特点修改即可。 代码 void ModifySqlist(SqList* ps, int pos, SqListDataType x) {assert(ps);assert(pos 0 pos ps-size);ps-arr[pos] x;} 10打印遍历数组即可 代码 void SqListPrint(SqList* ps) {assert(ps);int i 0;for (i 0; i ps-size; i){printf(%d , ps-arr[i]);}printf(\n); } 11销毁顺序表这一步也不能省略防止内存泄漏。 代码 //销毁 void DestorySqList(SqList* ps) {assert(ps);free(ps-arr);ps-arr NULL;ps-Capacity ps-size 0; } 以上就是顺序表的大致结构了。 通过上面我们可以发现顺序表适合尾插尾删修改这是因为顺序表随机访问的特点造成的。 本章完感谢大家的观看。

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

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

相关文章

微网站与微信的关系用vs做购物网站

resizeObserver.ts //对于对象的引用是弱引用,这意味着在没有其他引用存在时垃圾回收能正确进行。在取消引用时,不需要手动删除元素,因为它们会自动被垃圾回收。 const map new WeakMap();// ResizeObserver是一个构造函数,用于…

网站开发基于什么平台安徽省城乡建设网站

让我猜一下 – 你没有显示使用上面尝试获取lastName的扫描器的代码.在那次尝试中,你没有处理行尾令牌,所以它是悬空的,只是被你试图获取lastName的nextLine()调用吞噬.例如,如果你有这个:Scanner keyboard new Scanner(System.in);System.out.print("Enter a …

贵阳网站建设管理网站访问跳出率

1 param介绍 类似C编程中的全局变量,可以便于在多个程序中共享某些数据,参数是ROS机器人系统中的全局字典,可以运行多个节点中共享数据。 全局字典 在ROS系统中,参数是以全局字典的形态存在的,什么叫字典?…

青岛住房和城乡建设厅网站深圳精准网络营销推广

查看全局和本地 Git 配置 打开命令行终端(如 Git Bash),分别执行以下命令查看全局和本地的 Git 配置信息: git config --global -l git config --local -l确保配置中没有任何与 SSH 相关的设置 移除全局和本地 SSH 相关配置&…

学校做网站方案wordpress仿站视频教程

一、NIO三大组件 NIO的三大组件分别是Channel,Buffer与Selector Java NIO系统的核心在于:通道(Channel)和缓冲区(Buffer)。通道表示打开到 IO 设备(例如:文件、套接字)的连接。若需要使用 NIO 系统,需要获取用于连接 IO 设备的通…

河南网站建设37518外贸局合并到哪个局

一、源码特点 JSP康养小镇管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&a…

织梦怎么用框架实现在浏览器的地址栏只显示网站的域名而不显示出文件名企业网站策划过程

不同于 java 中的反射,Rust 没有提供以往意义上的运行时反射,取而代之的是 “编译期反射”,如 类型分析、类型转换、类型签名。但即便如此,也已经能对 Rust元编程 提供很多助力了。 这种操作,主要通过 Any 来实现&…

网站建设设计企业西安网站优化效果

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 一、内省是什么、实现方式: 内省(Introspector)是Java语言对Bean类属性、事件的一种缺省处理方法。…

永久免费个人网站注册厦门网站建设模拟平台

近日,全球领先的物联网整体解决方案供应商移远通信宣布,其旗下符合3GPP R17标准的新一代5G-A模组RG650V-NA成功通过了北美两家重要运营商认证。凭借高速度、大容量、低延迟、高可靠等优势,该模组可满足CPE、家庭/企业网关、移动热点、高清视频…

有口碑的宁波网站建设信息流优化师招聘

确保代码完整性 在撸业务代码时候,经常面对的是接口的设计,在设计之初,我们必然要先想好入参,之后自然会有参数的校验过程,此时我们需要把可能的输入都想清楚,从而避免在程序中出现各种纰漏。但是难免面面…

商丘网站制作推广网站建设是指

通过上一篇文章的介绍,我们已经了解到了在CorelDRAW中如何自定义设置默认字体,相关阅读可参阅:CDR X8设置文字为默认字体。其实在CorelDRAW软件中给用户提供方式不止是一种,本文将介绍更多关于设置默认字体的方法。1. 打开CorelDR…

自己怎么用h5做网站国家信息公示系统

glibc提供了backtrace这个库函数,可以用来打印call stack。比如我们可以在程序中注册常见的一些signal,比如SIGSEGMENT, SIGPIPE,然后在这些信号的回调函数中,利用backtrace打印出call stack,这样debug就非常的方便。 …

网站开发系统设计苏州网站制作计划

文章目录 生成随机值生成随机数生成范围内随机数生成自定义类型随机值从一组字母数字字符创建随机密码从一组用户定义字符创建随机密码 总结 生成随机值 rust中官方并没有像以他语言一样,rust并没有官方并没有提供生成随机数的工具,所以我们要借助rand包…

电子政务和网站建设工作的总结seo关键词优化平台

测量矩阵的基本概念 在压缩感知(Compressed Sensing,CS)理论中,测量矩阵(也称为采样矩阵)是实现信号压缩采样的关键工具。它是一个通常为非方阵的矩阵,用于将信号从高维空间映射到低维空间&…

企业网站网上推广的途径网站开发有哪些类型

一、 数据规范化 1.1 数据规范化的概念 定义 数据规范化是数据库设计中的一种方法,通过组织表结构,减少数据冗余,提高数据一致性和降低更新异常的过程。这一过程确保数据库中的数据结构遵循一定的标准和规范,使得数据存储更加高…

网站建设所用软件手机网页游戏排行榜2021前十名

总览 Exchanger类在线程之间传递工作和回收使用的对象方面非常有效。 AFAIK,它也是最少使用的并发类之一。 但是,如果您不需要GC,则使用ArrayBlockingQueue进行日志记录会更简单。 交换器类 Exchanger类对于在两个线程之间来回传递数据很有…

网站搭建南京微信平台商城开发

背景:润乾报表 win上面的项目直接上传到linux 上,但预览&下载报表时乱码如果含有斜线的单元格或统计图的报表在网页上发布时,统计图或斜线单元格里的汉字会变成小方框,此时往往是服务器端操作系统的中文安装包没有装全&#x…

如何做网站规范网站升级中

前言 在很多第一人称或者第三人称射击游戏的单人模式中,玩家的乐趣往往来源于和各式各样的AI敌人的战斗。而战斗的爆发很多时候是因为这些AI在“看见”玩家后就会立即做出反应,比如开火、呼叫同伴、躲藏或者逃跑等。 所以这些AI到底是如何探测&#xff0…

为什么做不了自己的网站y-m-d WordPress

AttributeError: ‘set’ object has no attribute ‘items’ 出现这个问题,原因可能是定义的header有问题 正确如下: header{“key”:“value”} 如果是直接在请求数据中复制,很有可能会忽略键和值的冒号。

电商的网站开发订单返利功能湖南外贸网站建设

文章目录一、前置准备1. 技术选型2. 创建vue项目二、Rem 布局适配2.1. px转rem2.2. 设置 rem 基准值2.3. 配置vue.config.js2.4. 重置样式表2.5. 配置样式表2.6. 安装less2.7. 注册less2.8. 代码中使用三、vant安装/配置/测试3.1. 安装vant-ui3.2. 引入与注册3.3. vant测试四、…