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

《网页设计与网站建设》大作业要求企业网站建立模板怎么做

《网页设计与网站建设》大作业要求,企业网站建立模板怎么做,网页制作作业源代码,有哪些网站是封面型在前一部分我们了解线性表和顺序表概念#xff0c;如果有不清楚可以参考下面的博客#xff1a; 数据结构(Chapter Two -01)—线性表及顺序表-CSDN博客 首先列出线性表的数据结构#xff1a; #define MaxSize 50 //定义顺序表最大长度 typedef struct{ElemType data…在前一部分我们了解线性表和顺序表概念如果有不清楚可以参考下面的博客 数据结构(Chapter Two -01)—线性表及顺序表-CSDN博客 首先列出线性表的数据结构 #define MaxSize 50 //定义顺序表最大长度 typedef struct{ElemType data[MaxSize];//顺序表的元素int length; //顺序表的当前长度 }SqList; //顺序表的类型定义接下来就是插入、删除、按值查找。 插入 顺序表我们可以思考数组这一典型的顺序表数据结构我们需要在第i个位置插入新元素e。 这里定义顺序表为L基本操作流程就是 1、判断数据有效性和存储空间是否满注意了可以插到表尾后一个元素所以iL.length1 2、为第i个位置腾出位置那就把第i个元素及之后的元素往后移注意了这是从最后一个元素开始移的。 3、在位置i放入元素e。 代码如下 bool ListInsert(SqList L,int i,ElemType e){if(i1||iL.length1) //判断i的范围是否有效return false;if(L.lengthMaxSize)//当前存储空间已满不能插入return false;for(int j L.length;ji;j--)//将第i个元素及之后的元素后移L.data[j]L.data[j-1];L.data[i-1]e; //在位置i处放eL.length; //线性表长度加1return true; } 最好情况表尾插入不需要移时间复杂度为O(1) 最坏情况表首插入需要执行n次移动操作时间复杂度为O(n) 平均情况O(n) 删除 删除第i个位置的元素将删除的值赋给e 操作流程 1、判断数据有效性 2、将删除的值赋给e 3、将第i1个元素及后面元素往前移 bool ListDelete(SqList L,int i,Elemtype e){if(i1||iL.length) //判断i的范围是否有效return false;e L.data[i-1]; //将删除的元素赋值给efor(int ji;jL.length;j)//将第i个位置后的元素前移L.data[j-1]L.data[j];L.length--; //线性表长度减1return true; } 最好情况删除表尾不需移时间复杂度O(1) 最坏情况删除表首元素需要移动除表头元素外的所有元素时间复杂度为O(n) 平均情况O(n) 按值查找 查找第一个元素等于e的元素并放回其位序位序不等于下标等于下标1 操作流程 遍历一遍表当找到第一个符合的就直接放回位序结束查找 int LocateElem(SqList L,ElemType e){for(int i 0;iL.length;i){//遍历一遍表当找到第一个符合的就直接放回位序结束查找if(L.data[i]e)return i1;}return 0; } 最好情况元素在表头时间复杂度O(1) 最坏情况元素在表尾需要比较n次时间复杂度O(n) 平均情况O(n) 最后拿着写代码来试一波效果 #include stdio.h #define MaxSize 20 typedef struct{int data[MaxSize];int length0; }SqList;bool ListInsert(SqList L,int i,int e){if(i1||iL.length1) //判断i的范围是否有效return false;if(L.lengthMaxSize)//当前存储空间已满不能插入return false;for(int j L.length;ji;j--)//将第i个元素及之后的元素后移L.data[j]L.data[j-1];L.data[i-1]e; //在位置i处放eL.length; //线性表长度加1return true; }bool ListDelete(SqList L,int i,int e){if(i1||iL.length) //判断i的范围是否有效return false;e L.data[i-1]; //将删除的元素赋值给efor(int ji;jL.length;j)//将第i个位置后的元素前移L.data[j-1]L.data[j];L.length--; //线性表长度减1return true; }int LocateElem(SqList L,int e){for(int i 0;iL.length;i){//遍历一遍表当找到第一个符合的就直接放回位序结束查找if(L.data[i]e)return i1;}return 0; }int main() {SqList L;int e 0;for(int i0;i10;i){//给顺序表赋值L.data[i]10-i;L.length;}printf(原始顺序表);for(int i0;iL.length;i) printf(%d ,L.data[i]);printf(\n);ListInsert(L,4,e);//第四个位置加12printf(增加后顺序表);for(int i0;iL.length;i) printf(%d ,L.data[i]);printf(\n);ListDelete(L,3,e);//第三个位置删除printf(删除后顺序表);for(int i0;iL.length;i) printf(%d ,L.data[i]);printf(\n);printf(查找0的位置:);int ans LocateElem(L,0);//查找0的位置printf(%d,ans);} 运行结果如下 最后的最后可能会有友友对于代码参数里面的会有疑惑 看一下函数顺序表不加“”的运行结果 可以看出顺序表没有改变。这个“”的作用是取地址或者引用在函数的参数列表里面看到的“”通常代表了引用。引用可以看成是变量的别名它的好处就是避免了复制参数的开销并且允许函数直接访问和修改原始数据。注意了这个引用是可以修改原始数据的就是修改main里面的顺序表L。没有引用虽然完成了函数的流程但修改不了原始数据表。 看一段代码   void increment(int x){x; } int main(){ int y5; increment(y);//y的值由5变成6 } 这个里面“”为引用当我们调用increment(y)时我们实际上把y的地址传递到函数而不是它的值这样函数可以直接修改y在函数参数中使用引用时我们不需要在调用函数中再次使用符号因为在定义函数的时候已经定义了该参数需要引用。 可以敲敲代码试一下
http://www.pierceye.com/news/504846/

相关文章:

  • 简单的网站更新 关键词优化 关键词互联如何做网
  • 重庆网站seo搜索引擎优化网站qq登录 开发
  • 备案号放网站下面居中物流网站制作目的
  • 房产网站排名做情侣网站
  • 营销型网站建设推荐国内团购网站做的最好的是
  • 前端网站建设苏州高新区建设局网站管网
  • 中小企业网站建设中服务器的解决方案是网站建设推广总结
  • 东莞网站建设新闻资讯做赌场网站犯法么
  • wordpress怎么添加单页模版seo价格是多少
  • 网站域名有了_网站如何建设优书网首页
  • 宠物网站建设策划报告Wordpress is文章展示
  • 电子建设网站的目的阿里巴巴网站是用什么技术做的
  • 图形设计网站wordpress微信群多个二维码
  • 网站建设维护是干什么网站用户需求报告
  • 咸宁网站建设公司水网站模板
  • 移动网站开发教材seo网站排名优化价格
  • 重生做网站小说畅想网络网站建设推广
  • 找个做网站的 优帮云wordpress 判断自定义栏目
  • wordpress文章目录分页wordpress加速优化服务
  • 二级目录网站怎么做小程序开发成都公司
  • 网站标题名字和备案名字网站开发 质量管理
  • 网站与系统开发吉安网站建设收费
  • 湖北襄阳网站建设wordpress电商ar
  • 微做网站环保行业网站建设
  • 昭通做网站公司北京手机网站制作多少钱
  • 昆明企业建网站多少钱如何弄微信小程序
  • wordpress清理网站缓存做的比较简约的网站
  • 青岛高端网站制作中铁建设集团门户密码
  • 公司专业做网站做网站域名起什么作用
  • 推广型网站建设机构如何创建wordpress