随笔分类 -  数据结构学习篇

摘要:1.QueueNode.h:链式队列结点类定义/** Copyright (c) 2009,FreshAir团队嵌入式软件研发组* All rights reserved.** 文件名称:QueueNode.h* 摘 要:链式队列结点类定义** 当前版本:1.0* 作 者:吴友强* 完成日期:2009年10月19日** 取代版本:* 原作者 :* 完成日期:*/#include <iostream.h>#include <stdlib.h>template <class T> class LinkQueue;template <class T>c 阅读全文
posted @ 2009-10-19 20:31 蔷薇理想人生 阅读(249) 评论(0) 推荐(0) 编辑
摘要:基本要求:1)建立顺序循环队列类SeqQueue。2)编写程序判断一个字符序列是否是回文。提高要求:1)建立链式循环队列类LinQueue。2)编写程序判断一个字符序列是否是回文。1.SeqQueue.h:顺序循环队列类的定义与实现/** Copyright (c) 2009,FreshAir团队嵌入式软件研发组* All rights reserved.** 文件名称:SeqQueue.h* 摘 要:顺序循环队列类的定义与实现** 当前版本:1.0* 作 者:吴友强* 完成日期:2009年10月18日** 取代版本:* 原作者 :* 完成日期:*/#include <iostream. 阅读全文
posted @ 2009-10-19 20:24 蔷薇理想人生 阅读(309) 评论(0) 推荐(0) 编辑
摘要:说明:提高要求的链式堆栈实现与测试1.StackNode.h:链式堆栈的结点类/** Copyright (c) 2009,FreshAir团队嵌入式软件研发组* All rights reserved.** 文件名称:StackNode.h* 摘 要:堆链式栈类的定义与实现** 当前版本:1.0* 作 者:吴友强* 完成日期:2009年10月13日** 取代版本:* 原作者 :* 完成日期:*/template <class T> class LinkStack;//前向声明template <class T>class StackNode{friend class 阅读全文
posted @ 2009-10-19 20:16 蔷薇理想人生 阅读(204) 评论(0) 推荐(0) 编辑
摘要:说明:继续实现前面堆栈部分提高要求的功能1.SeqStack.h/** Copyright (c) 2009,FreshAir团队嵌入式软件研发组* All rights reserved.** 文件名称:SeqStack.h* 摘 要:顺序堆栈类的定义** 当前版本:1.0* 作 者:吴友强* 完成日期:2009年10月13日** 取代版本:* 原作者 :* 完成日期:*/#include <iostream.h>#include <stdlib.h>typedef int DataType;const int MaxStackSize = 100;class Seq 阅读全文
posted @ 2009-10-19 19:49 蔷薇理想人生 阅读(202) 评论(0) 推荐(0) 编辑
摘要:说明:继承链表实现链式堆栈。1.LinkStack.h#include "LinkList.h"template <class T>class LinkStack:public LinkList<T> {public:LinkStack();virtual ~LinkStack();void Push(const T& item);//元素item入栈 T Pop(void);//出栈元素并返回T Peek(void) const;//读栈顶元素并返回int StackIsEmpty(void) const;int GetSize(void) 阅读全文
posted @ 2009-10-19 19:40 蔷薇理想人生 阅读(158) 评论(0) 推荐(0) 编辑
摘要:基本要求:1)用继承顺序表类SeqList的方法建立顺序栈类SeqStack,编写程序实现十进制数和八进制数的转换;2)用继承链表类LinList的方法建立顺序栈类LinStack,编写程序实现十进制数和八进制数的转换;提高要求:1)用直接类定义和实现方法建立顺序栈类SeqStack,编写程序实现十六进制数和八进制数的转换。2)用直接类定义和实现方法建立顺序栈类LinStack,编写程序实现十六制数和八进制数的转换。说明:基本要求是用继承的方式,前面的文章给出了被继承的类,这里只给出完整的堆栈实现。1.SeqStack.h的代码:#include "SeqList.h"cl 阅读全文
posted @ 2009-10-19 16:59 蔷薇理想人生 阅读(220) 评论(0) 推荐(0) 编辑
摘要:1.给出提高要求2的函数实现/** 函数名称: Concatenate* 输 入:source,target*source:需要连接的对象*target:被连接的对象* 输 出:* 功能描述: 将对象source连接到单链表target的尾部* 作 者:吴友强* 日 期:2009年10月13日* 修 改:* 日 期:*/template <class T>void Concatenate(LinkList<T>& target, LinkList<T>& source){ListNode<T> *q = source.head;w 阅读全文
posted @ 2009-10-18 10:59 蔷薇理想人生 阅读(206) 评论(0) 推荐(0) 编辑
摘要:基本要求:1)用模板方法建立链表的结点类ListNode和单链表类LinList,编写程序实现向单链表插入100整数,然后,以插入次序删除这100个整数。提高要求:1)简单修改程序,将单链表类LinList改为双向循环链表类。向双向循环链表插入100字符,然后,以插入次序删除这100个字符。2)编写函数实现单链表类LinList的对象B连接到单链表类LinList的对象A的尾部:VoidConcatenate(LinList&A,LinList&B)。1.ListNode.h结点定义:/** Copyright (c) 2009,FreshAir团队嵌入式软件研发组* All 阅读全文
posted @ 2009-10-18 10:45 蔷薇理想人生 阅读(277) 评论(0) 推荐(0) 编辑
摘要:1.在SeqList.h中添加声明:void DeleteItemAll(const int item);//删除所有等于item的记录2.在SeqList.cpp中实现该函数如下:/** 函数名称: DeleteItemAll* 输 入:item*item:需要删除数据* 输 出:* 功能描述: 删除所有等于item的记录* 作 者:吴友强* 日 期:2009年10月12日* 修 改:* 日 期:*/void SeqList::DeleteItemAll(const int item){if (0 == size){cerr << "顺序表已空无元素可删!" 阅读全文
posted @ 2009-10-18 10:41 蔷薇理想人生 阅读(174) 评论(0) 推荐(0) 编辑
摘要:1.题目:基本要求:1)建立线性表的顺序表类SeqList, 提高要求:在顺序表类SeqList增加一个删除函数,要求删除顺序表中等于item的所有元素。1.SeqList.h:/** Copyright (c) 2009,FreshAir团队嵌入式软件研发组* All rights reserved.** 文件名称:SeqList.h* 摘 要:定义顺序表类** 当前版本:1.0* 作 者:吴友强* 完成日期:2009年10月12日** 取代版本:* 原作者 :* 完成日期:*/#include <stdlib.h>#include <iostream.h>typed 阅读全文
posted @ 2009-10-17 10:21 蔷薇理想人生 阅读(217) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示