第四周项目3--单链表应用1
2016-09-22 11:16
176 查看
问题及代码:
linklist.h和linklist.cpp详见第四周项目2--建立单链表算法库
main,cpp
运行结果:
![](http://img.blog.csdn.net/20160922111104471?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
知识点总结:
单链表逆置
学习心得:
运用单链表头插法和尾插法的特点实现了节点逆置,很方便。
/* * Copyright (c)2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:项目3.cpp * 作 者:陈哲 * 完成日期:2016年9月22日 * 版 本 号:v1.0 *问题描述:设计一个算法,将一个带头结点的数据域依次为a1,a2,…,an(n≥3) 的单链表的所有结点逆置,即第一个结点的数据域变为an,…,最后一个 结点的数据域为a1。实现这个算法,并完成测试。 提示:实现算法时,可以设计下面的函数:void Reverse(LinkList *&L) *输入描述:无 *程序输出:输出逆置的链表 */
linklist.h和linklist.cpp详见第四周项目2--建立单链表算法库
main,cpp
#include "linklist.h" void Reverse(LinkList *&L) { LinkList *p=L->next,*q; L->next=NULL; while(p!=NULL) { q=p->next; p->next =L->next; L->next=p; p=q; } } int main() { LinkList *L; ElemType a[8]= {7, 9, 8, 2, 0, 4, 6, 3}; /*头插法建立 CreateListF(L, a, 8); printf("头插法建表结果:"); DispList(L);*/ //尾插法建立 CreateListR(L, a, 8); printf("尾插法建表结果:"); DispList(L); Reverse(L); printf("逆置后的链表:"); DispList(L); printf("销毁单链表\n"); DestroyList(L); return 0; }
运行结果:
知识点总结:
单链表逆置
学习心得:
运用单链表头插法和尾插法的特点实现了节点逆置,很方便。
相关文章推荐
- 文件下载
- WKWebView与JS交互实战技巧之API介绍
- 欢迎使用CSDN-markdown编辑器
- adb shell 开启 Activity 随笔
- ReactNative-JS调用原生方法
- 第四周项目3 单链表应用(1)
- win10下自动切换ip脚本
- ThreadLocal
- 对象拷贝
- vmware 虚拟机控制台打开慢的解决方案
- numpy.histogram 官方手册
- 自定义按钮,是图片和文字水平居中显示
- 分享一个UI与业务逻辑分层的框架(三)
- 【如何快速的开发一个完整的iOS直播app】(采集篇)
- Java中的Double类型计算
- Bootstrap
- Maya 导出动画到THREE.js
- SWift-iOS常用控件(UIProcessView进度条)
- V尼熊的java之旅——基本类型与运算篇
- 输入过欠压保护电路原理图