1.单向链表按位置修改

void list_update_pos(linklist *L,int pos,datatype e)
{if(NULL==L||list_empty(L)||pos<0||pos>L->len){printf("修改失败\n");return ;}linklist *p=list_find_node(L,pos);p->data=e;printf("修改成功\n");
}

2.单向链表的翻转 (非递归)

void list_reverse(linklist *L)
{if(NULL==L){printf("翻转失败\n");return ;}linklist *p=L->next;L->next=NULL;linklist *s=NULL;while(p){s=p->next;p->next=L->next;L->next=p;p=s;}printf("翻转完成\n");
}

单向链表的翻转 (递归):

linklist *reverse(linklist* L)
{if(L==NULL||L->next==NULL){return L;}else{ linklist *p=reverse(L->next);L->next->next=L;L->next=NULL;return p;}
}

递归代码经过多次修改测试仍然会出现段错误和乱码 w,原因尚不明确

输出结果:

3.双向链表尾插、头删、按值修改

int insert_tail(doublelink *d,datatype e)
{if(NULL==d){printf("插入失败\n");return -1;}doublelink *p=apply(e);if(empty(d)){d->next=p;p->prio=d;}else{doublelink *q=find(d,d->len);q->next=p;p->prio=q;}d->len++;printf("插入成功\n");return 0;
}
int delet_head(doublelink *d)
{if(NULL==d||empty(d)){printf("删除失败\n");return -1;}doublelink *p=d->next;if(p->next==NULL){p->prio->next=NULL;free(p);}else{p->prio->next=p->next;p->next->prio=p->prio;free(p);}d->len--;p=NULL;printf("删除成功\n");return 0;
}
int update_value(doublelink *d,datatype old_e,datatype new_e)
{if(NULL==d||empty(d)){printf("修改失败\n");return -1;}doublelink *q=d->next;while(q!=NULL){if(q->data==old_e){q->data=new_e;}q=q->next;}printf("修改成功\n");return 0;
}

输出结果:

华清远见上海中心22071班 8.24作业相关推荐

  1. 华清远见上海中心22071班--11.24作业

    题目:应用层采取ioctl命令控制,驱动代码用GPIO子系统,实现开发板6盏灯的循环亮灭 头文件程序: #ifndef __LED_H__ #define __LED_H__typedef enum{ ...

  2. 华清远见上海中心22071班 9.2作业

    1.用父子进程拷贝一张图片,其中子进程先拷贝后半部分,父进程后拷贝前半部分.要求用文件IO实现. 函数: #include <stdio.h> #include <fcntl.h&g ...

  3. 华清远见上海中心22071班--11.19作业

    题目:实现开发板点灯操作 程序要求: 1)分部实现注册字符设备驱动 2)自动创建设备节点 3)通过结构体对led灯地址进行映射 4)次设备号完成私有数据传参 5)在open函数中获取到次设备号,用私有 ...

  4. 华清远见上海中心22071班 9.7作业

    目录 1.创建两个线程 A.B,要求A线程读取文件中的数据,B线程将读取到的数据打印到终端上,类似shell命令cat. 2.编写一个程序,开启3个线程,这3个线程的ID分别为A.B.C,每个线程将自 ...

  5. 华清远见上海中心22071班 9.30作业

    电子词典: 登录注册功能,不能重复登录,重复注册 单词查询功能 历史记录功能,存储单词,意思,以及查询时间 基于TCP,支持多客户端连接 采用数据库保存用户信息与历史记录 将dict.txt的数据导入 ...

  6. 华清远见上海中心22071班 9.21作业

    1.完成数据库的插入.删除.修改,插入选择全字段插入.删除.修改选择用id的方式 代码: #include <stdio.h> #include <sqlite3.h> #in ...

  7. 华清远见上海中心22071班 9.19作业

    目录 1.并发服务器 1)多进程并发服务器 2)多线程并发服务器 2.域套接字 1.流式域套接字(TCP) 1.1服务器 1.2客户端 2.报式套接字(UDP) 2.1服务器 2.2客户端 1.并发服 ...

  8. 华清远见上海中心22071班 8.25作业

    目录 1.用无头结点的循环链表实现约瑟夫环问题 头文件: 功能函数: 主函数: 终端输出: 2.顺序栈实现进制转换问题 头文件: 功能函数: 主函数: 终端输出: 1.用无头结点的循环链表实现约瑟夫环 ...

  9. 华清远见上海中心22071班--11.28作业

    题目:三个按键实现按键中断,key1>>led1,key2>>led2, key3>>led3.按键按一下灯亮,再按一下灯灭 . #include <linu ...

最新文章

  1. shell脚本——实现简单的功能
  2. python编码转换规范_Python转载[编码规范]
  3. python删除指定日期前的备份文件
  4. C语言解决迭代递推问题
  5. cenos7上部署python3环境以及mysqlconnector2.1.5
  6. 专业五线谱作曲打谱软件Overture的常用快捷键功能大全
  7. arcgis中给属性文件加x y坐标
  8. 在Windows搭建私人蚂蚁云笔记服务器
  9. 酷派s6电信版开机显示无服务器,电信版酷派s6刷机教程和方法【图文】
  10. openwrt路由器打印机服务器设置_OPENWRT网络打印机TCP/IP共享设置教程 以703N为例...
  11. 技术人员如何创业(2)---合伙人的模式
  12. 盘点 6 个开源的音乐播放器!
  13. uvaoj 10066 - The Twin Towers 最长公共子序列(LCS)
  14. android平板 视频输入,安卓平板电脑的新突破口:HDMI in 视频输入,取代便携显示器...
  15. 初涉网络,自己对服务器的一些基础理解
  16. FTP主动和被动模式区别
  17. 齐博模板直接写mysql_齐博CMS使用教程系统安装.ppt
  18. 2019 CCPC-Wannafly Winter Camp Day8 (Div2, onsite) 补题记录
  19. JS中JSON.parse()
  20. 缠论中枢的判断以及应用(完整版)

热门文章

  1. Mysql基础学习内容
  2. 对讲机CE认证需做什么测试
  3. Spring集成Redis键值乱码\xac\xed\x00\x05t\x00\tb
  4. 基于机器学习的心脏成像诊断
  5. 视频伪原创批量处理工具 抖音短视频解去水印
  6. 基于Grad-CAM与KL损失的SSD目标检测算法
  7. ionic 打 android 出现 Current working directory is not a Cordova-based project.
  8. 【小技巧】2345——劫持Edge浏览器主页,它它它.....它又回来了
  9. mysql 外键有啥用途_外键
  10. Android传输助手,电脑手机传输助手