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

网站怎么做是满屏沈阳网站外包公司

网站怎么做是满屏,沈阳网站外包公司,哈尔滨网站建设云聚达,智能网站建设报价文章目录 1.原题2.算法思想3.关键代码4.完整代码5.运行结果 1.原题 线性表使用公式化描述方式存储。编写一个函数#xff0c;从一给定的线性表A中删除值在x ~ y#xff08;x到y#xff0c;xy#xff09;之间的所有元素#xff0c;要求以较高的效率来实现。提示#… 文章目录 1.原题2.算法思想3.关键代码4.完整代码5.运行结果 1.原题 线性表使用公式化描述方式存储。编写一个函数从一给定的线性表A中删除值在x ~ yx到yxy之间的所有元素要求以较高的效率来实现。提示可以先将线性表中所有值在x~y之间的元素置成一个特殊的值并不立即删除它们然后从最后向前依次扫描发现具有特殊值的元素后移动其后面的元素将其删除掉。 2.算法思想 不需要管提示有更好的算法。对于在x ~ y之间的元素不需要管。对于不在x ~ y之间的元素移动到指定的位置。通过双指针来实现这样免去了每次删除的复杂操作降低时间复杂度 3.关键代码 typedef struct {int data[MAX_SIZE]; /** 用数组存储线性表的元素 */int length; /** 记录线性表的当前长度 */ } LinearList;/*** brief 删除线性表中所有值介于 x 和 y 之间的元素** param list 指向 LinearList 结构的指针* param x 范围的下限值* param y 范围的上限值*/ void deleteInRange(LinearList *list, int x, int y) {int insertPos 0; // 插入位置的指针for (int i 0; i list-length; i) {if (list-data[i] x || list-data[i] y) {if (i ! insertPos) {list-data[insertPos] list-data[i];}insertPos;}}list-length insertPos; // 更新线性表的长度 }4.完整代码 /*** file linear_list.c* brief 实现了线性表的基本操作如初始化、插入、删除、输出和删除范围内的元素。*/#include stdio.h #include stdlib.h#define MAX_SIZE 100 /** 定义线性表的最大长度为100 */typedef struct {int data[MAX_SIZE]; /** 用数组存储线性表的元素 */int length; /** 记录线性表的当前长度 */ } LinearList;/*** brief 删除线性表中所有值介于 x 和 y 之间的元素** param list 指向 LinearList 结构的指针* param x 范围的下限值* param y 范围的上限值*/ void deleteInRange(LinearList *list, int x, int y) {int insertPos 0; // 插入位置的指针for (int i 0; i list-length; i) {if (list-data[i] x || list-data[i] y) {if (i ! insertPos) {list-data[insertPos] list-data[i];}insertPos;}}list-length insertPos; // 更新线性表的长度 }/*** brief 初始化线性表** param list 指向 LinearList 结构的指针*/ void initList(LinearList *list) {list-length 0; }/*** brief 插入元素到线性表指定位置** param list 指向 LinearList 结构的指针* param element 要插入的元素值* param position 插入的位置* return int 插入成功返回1失败返回0*/ int insertElement(LinearList *list, int element, int position) {if (position 0 || position list-length || list-length MAX_SIZE) {return 0; // 插入失败}// 将插入位置之后的元素依次向后移动一位for (int i list-length - 1; i position; i--) {list-data[i 1] list-data[i];}list-data[position] element;list-length; // 长度加一return 1; // 插入成功 }/*** brief 删除线性表指定位置的元素** param list 指向 LinearList 结构的指针* param position 要删除的元素位置* return int 删除成功返回1失败返回0*/ int deleteElement(LinearList *list, int position) {if (position 0 || position list-length) {return 0; // 删除失败}// 将删除位置之后的元素依次向前移动一位for (int i position; i list-length - 1; i) {list-data[i] list-data[i 1];}list-length--; // 长度减一return 1; // 删除成功 }/*** brief 输出线性表中的元素** param list LinearList 结构*/ void displayList(LinearList list) {printf(Linear List: );for (int i 0; i list.length; i) {printf(%d , list.data[i]);}printf(\n); }/*** brief 销毁线性表** param list 指向 LinearList 结构的指针*/ void destroyList(LinearList *list) {list-length 0;// 可选的将数组元素清零// memset(list-data, 0, sizeof(list-data)); }/*** brief 主函数** return int 程序执行结果*/ int main() {LinearList list;initList(list);int elements[] {21, 22, 5, 6, 23, 7, 24, 8, 25, 9, 10, 26, 27, 28};int numElements sizeof(elements) / sizeof(elements[0]);for (int i 0; i numElements; i) {insertElement(list, elements[i], i);}displayList(list);int x 6;int y 25;deleteInRange(list, x, y);displayList(list);destroyList(list);return 0; }5.运行结果
http://www.tj-hxxt.cn/news/135937.html

相关文章:

  • 广州中新知识城开发建设网站千华网鞍山门户网站
  • 网站建设和电子商务的关系网站被备案能建设
  • 公网怎么做网站百科网站开发
  • 做钓鱼网站原理wordpress 汉化 插件怎么用
  • 英文网站建设深圳wordpress html5插件
  • 公司网站建设需要资质室内装修设计图效果图
  • 专业手机网站怎么做建设一个网站可以做什么
  • 网站策划用培训吗确定网站开发团队
  • 妙趣网 通辽网站建设免费中文网站模板下载
  • 自己做响应式网站难吗wordpress文章摘要调用
  • 泉州网站建设方案维护关于数据机房建设的网站
  • 政务网站建设管理百度是门户网站吗
  • 深圳网站建设公司联华电子商务网站设计的原则
  • 网站建设关键技术怎么建立自己的自媒体平台
  • 域名审核怎么做返利网站展示网站开发 大概多少钱
  • 公司网站建设的市场需求安阳区号
  • 建设企业网站的好处是什么推广文案范文100字
  • 网站跳转域名不变wordpress相册支持批量外链
  • 建设设计网站新类型 网站
  • 网站备案主体黑名单门户网站开发介绍
  • 注册网站费用网站联盟三要素
  • aipage网站建设wordpress 电子商务插件
  • 建设银行找招聘网站网站最近收录
  • 沧州手机网站搜题在线使用网页版
  • 中国免费网站申请青海省住房和城乡建设厅 网站
  • asp 免费网站模板网站关键词排名优化应该怎么做
  • 武昌做网站报价wordpress quora
  • 东莞石龙网站建设wordpress %1$s
  • js 网站制作苏州乡村旅游网站建设策划书
  • 做暑假工的网站韩国的小游戏网站