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

网站建设信息发布龙岗商城网站建设

网站建设信息发布,龙岗商城网站建设,网站建设是属于什么岗位,修改网站照片需要怎么做目录一.线性表和顺序表的概念二.顺序表的实现1.动态顺序表的创建2.初始化顺序表3.打印顺序表4.销毁顺序表5.检查容量6.头插 尾插7.头删 尾删三.使用下标插入删除1.删除指定位置2.向指定位置插入指定数一.线性表和顺序表的概念 线性表是n个具有相同特性的数据元素的有限序列。 线… 目录一.线性表和顺序表的概念二.顺序表的实现1.动态顺序表的创建2.初始化顺序表3.打印顺序表4.销毁顺序表5.检查容量6.头插 尾插7.头删 尾删三.使用下标插入删除1.删除指定位置2.向指定位置插入指定数一.线性表和顺序表的概念 线性表是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构常见的线性表顺序表、链表、栈、队列、字符串… 线性表在逻辑上是线性结构也就说是连续的一条直线。但是在物理结构上并不一定是连续的线性表在物理上存储时通常以数组和链式结构的形式存储。 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构一般情况下采用数组存储。在数组上完成数据的增删查改。 二.顺序表的实现 1.动态顺序表的创建 我们先行定义一个初始容量INT_TIAL为 4. typedef int SLDataList; #define INT_TIAL 4 typedef struct SeqList {SLDataList* a;int size;//现存个数int capacity;//容量 }SL;2.初始化顺序表 先对顺序表进行功能实现前我们需要先将初始值赋好。 void SeqInit(SL* pr) {assert(pr);SLDataList* tmp (SLDataList*)malloc(sizeof(SLDataList) * INT_TIAL);if (tmp NULL){perror(malloc tmp is\n);return;}else{pr-a tmp;}pr-size 0;pr-capacity INT_TIAL; }3.打印顺序表 void SeqPrin(SL* pr) {assert(pr);for (int i 0; i pr-size; i)printf(%d , pr-a[i]);printf(\n); }4.销毁顺序表 void DisSeq(SL* pr) {assert(pr);free(pr-a);pr-a NULL;pr-size 0;pr-capacity 0; } 5.检查容量 对顺序表所有的插入操作前都应该就检查顺序表的容量是否充足所以应该编写检查容量函数对顺序表进行扩容。 void SeqCheckCapacity(SL* pr) {assert(pr);if (pr-size pr-capacity){SLDataList* tmp (SLDataList*)realloc(pr-a, pr-capacity * sizeof(SLDataList) * 2);if (tmp NULL){perror(realloc is\n);return;}pr-a tmp;pr-capacity * 2;} }6.头插 尾插 尾插比较简单但是进行头插时需要进行类似memmove的操作进行内存覆盖。 void PushBack(SL* pr) {assert(pr);if (pr-size1 pr-capacity)SeqCheckCapacity(pr);else{int input;printf(输入要插入的数:);scanf(%d, input);pr-a[pr-size] input;pr-size;} }void PushFront(SL* pr) {assert(pr);if (pr-size1 pr-capacity)SeqCheckCapacity(pr);else{int input;printf(输入要插入的数:);scanf(%d, input);int end pr-size-1;while (end 0){pr-a[end1] pr-a[end];end--;}pr-a[0] input;pr-size;}}7.头删 尾删 void PopBack(SL* pr) {assert(pr);assert(pr-size 0);pr-size--; }void PopFront(SL* pr) {assert(pr);if (pr-size 1)return;else{int i 0;while (i pr-size - 1){pr-a[i] pr-a[i 1];i;}pr-size--;} }三.使用下标插入删除 1.删除指定位置 void SeqDel(SL* pr, int pos) {assert(pr);assert(pos 0 pos pr-size);int end pos 1;while (end pr-size){pr-a[end - 1] pr-a[end];end;}pr-size--; } 2.向指定位置插入指定数 void SeaSert(SL* pr, int pos, int x) {assert(pr);assert(pos 0 pos pr-size);if(pr-size1pr-capacity)SeqCheckCapacity(pr);else{int end pr-size;while (end pos){pr-a[end] pr-a[end - 1];end--;}pr-a[pos] x;pr-size;}}最后我们就实现了一个简单的顺序表功能但是顺序表的缺点也非常明显: 中间头部插入删除数据需要挪动数据效率低下空间不够扩容。扩容有一定的消耗其次还可能会有一定空间浪费 在接下来的链表的学习后我们将会解决这个问题。
http://www.hkea.cn/news/14417884/

相关文章:

  • 搜狐自助建站哪个平台好用公司部门组织架构图
  • 厦门小型网站建设网站架构图图
  • 网站搭建注意事项说服企业做网站
  • 平台设计网站公司电话号码首选大型网站建站公司
  • 建筑网站的思想西安seo网络推广
  • 怎样做网站ppt多网合一网站
  • 自己做的网站被黑了怎么办ip达1万的网站怎么做
  • 福建省建设工程造价站官方网站网站开发先写后端先写前端
  • 孵化基地网站怎么建设如何备份网站 整站
  • 购物网站的文化建设问题网站开发国内外现状研究
  • 网站建设 php jsp .net抖音seo运营模式
  • 网站读取速度慢汕头百度关键词推广
  • 优惠券网站是怎么做的wap 网站 源码
  • 商丘建设厅网站首页成都服务器idc托管
  • 公司网站建设团队设计师导航网站源码
  • jsp做网站案例wordpress首页文章
  • 南京软件网站建设公司wordpress 优质插件
  • 做糕点哪个网站带会员中心WordPress主题
  • 网站备案提交资料wordpress微信支付功能
  • 怎么做切片网站阿里企业邮箱后缀
  • 直接采用模板网站有什么缺点网站建设服务器怎么设置
  • 手机网站 qq代码专业设计vi公司
  • 建设网站建站公司成都公司注册后多久可以买房
  • 动漫网站源码大连专业模板网站制作公司
  • 潍坊网站建设诸城高密某电子商务网站建设的详细策划
  • 盘锦网站设计网站没被百度收录
  • 深圳龙华建设工程交易中心网站wordpress htaccess文件
  • 品牌商城网站建设公司电脑系统下载官方网站
  • 图书商城网站开发的目的东莞房产信息网
  • 网站建设会计分录上海尚海整装官方网站