第四周实践项目3--单链表应用(1)单链表逆置
2015-10-05 17:02
323 查看
问题及代码:
1. 程序中利用了已经实现的单链表算法,头文件LinkList.h及其中函数的实现见单链表算法库
2.Reverse函数代码:
3.main函数
运行结果:
知识点总结:
单链表的数据逆置输出。
学习心得:
要学会工程思想,头文件LinkList.h可用超链接表示出来,比较方便。
/* Copyright (c)2015,烟台大学计算机与控制工程学院 All rights reserved. 文件名称:项目3-- 单链表应用.cpp 作 者:朱振华 完成日期:2015年10月5日 版 本 号:v1.0 问题描述:设计一个算法,将一个带头结点的数据域依次为 a1,a2,…,an(n≥3)的单链表的所有结点逆置, 即第一个结点的数据域变为an,…,最后一个结点 的数据域为a1。 输入描述:若干节点 。 程序输出:倒置的若干节点。 */
1. 程序中利用了已经实现的单链表算法,头文件LinkList.h及其中函数的实现见单链表算法库
2.Reverse函数代码:
#include <stdio.h> #include <malloc.h> #include "linklist.h" void Reverse(LinkList *&L) { LinkList *p=L->next,*q; L->next=NULL; while (p!=NULL) //扫描所有的结点 { q=p->next; //让q指向*p结点的下一个结点 p->next=L->next; //总是将*p结点作为第一个数据结点 L->next=p; p=q; //让p指向下一个结点 } }
3.main函数
#include <stdio.h> #include <malloc.h> #include "linklist.h" int main() { LinkList *L; ElemType a[]= {1,3,5,7, 2,4,8,10}; CreateListR(L,a,8); printf("L:"); DispList(L); Reverse(L); printf("逆置后L: "); DispList(L); DestroyList(L); return 0; }
运行结果:
知识点总结:
单链表的数据逆置输出。
学习心得:
要学会工程思想,头文件LinkList.h可用超链接表示出来,比较方便。
相关文章推荐
- 降低项目失败率的三个原则
- rails创建应用程序实例
- 使用nodejs开发cli项目实例
- jQuery 选择器项目实例分析及实现代码
- 项目实践之javascript技巧
- Android项目中引用本地aar文件的方法
- Android Studio项目中导入开源库的方法
- 使用ASP.NET.4.5.1+MVC5.0 搭建一个包含 Ninject框架 项目
- 学Java做项目需要学习的一些技能
- Django在Win7下的安装及创建项目hello word简明教程
- Android studio 使用心得(三)---从Eclipse迁移到Android studio
- myeclipse项目工程总是进入debug状态的修改
- 在iPhone项目中使用讯飞语音SDK实现语音识别和语音合成
- android每次运行项目有时需要重新启动一个新的模拟器的解决办法
- 手机测试项目时报INSTALL_FAILED_INSUFFICIENT_STORAGE
- 中小型网络项目建设案例
- rsync
- 升级Exchange Server 2010 到 SP3时报错
- zabbix 自定义CPU百分比模板