摘要: 广义表是一种非线性表的数据结构,是线性表的一种推广。他放松了对原子的控制,容许原子有自身的结构。其实现如下: #include<iostream>using namespace std;#include<assert.h>enum Type //原子类型有三种:头结点,子表节点和值节点{ HEAD, 阅读全文
posted @ 2016-09-28 22:26 请叫我小小兽 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 关于二叉树的功能有二叉树的创建和销毁,前序遍历,中序遍历,后续遍历,求二叉树中节点的个数,求二叉树的深度,查找二叉树中的某一个节点 #include<iostream>using namespace std; template<class T>struct BinaryTreeNode{ T _da 阅读全文
posted @ 2016-09-28 10:40 请叫我小小兽 阅读(222) 评论(0) 推荐(0) 编辑
摘要: strstr函数用于判断str2是否是str1的子串,如果是,则返回str2在str1中首次出现位置的地址,如果不是则返回NULL.其模拟实现代码如下:#include<iostream> using namespace std;#include<assert.h>char* my_strstr(c 阅读全文
posted @ 2016-09-27 18:38 请叫我小小兽 阅读(1515) 评论(0) 推荐(0) 编辑
摘要: 4.判断元素出栈,入栈顺序的合法性,如入栈序列是(1,2,3,4,5),出栈序列是(4,5,3,2,1)是合法序列入栈序列是(1,2,3,4,5),出栈序列是(1,5,3,2,4) 思路:首先判断栈的长度,如果小于0则退出。根据给定的出栈序列,不断地进行入栈出栈操作,如果所有元素都能全部入栈并且出栈 阅读全文
posted @ 2016-09-17 14:37 请叫我小小兽 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 1. 实现一个栈,要求实现出栈,入栈,Min返回最小值的操作的时间复杂度为o(1) 思路:要使这些操作的时间复杂度为o(1),则必须保证栈的每个元素只被遍历一次。求解时需要借助两个栈,一个入数据,一个入所遍历过数据的最小值,遍历结束后,放最小值的栈的栈顶元素即为所求的最小值。#include<ios 阅读全文
posted @ 2016-09-17 14:25 请叫我小小兽 阅读(2946) 评论(0) 推荐(0) 编辑
摘要: 在泛型编程还是STL的实际运用中,迭代器(iterator)无疑扮演者重要的角色。迭代器是一种类似于指针的对象(如可以内容提领,成员访问等),但他又不仅仅是一种普通的指针。关于迭代器失效,我们可以看下面这个例子: #include<vector>#include<list>void PrintVec 阅读全文
posted @ 2016-09-15 11:41 请叫我小小兽 阅读(14033) 评论(2) 推荐(3) 编辑
摘要: #pragma once#include<iostream>using namespace std;#include<assert.h>template<class T>struct __ListNode{ __ListNode<T>* _prev; __ListNode<T>* _next; T 阅读全文
posted @ 2016-09-14 21:38 请叫我小小兽 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 利用栈实现迷宫问题的求解(找到迷宫的通路,如下面给定的迷宫,0代表通路,1代表不通,利用栈的特点,求出他的通路) 给定的迷宫: 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 10 0 0 1 1 1 1 1 1 11 1 0 1 1 1 1 1 1 11 1 0 1 1 阅读全文
posted @ 2016-09-11 11:09 请叫我小小兽 阅读(948) 评论(0) 推荐(0) 编辑
摘要: #include<iostream>using namespace std;typedef int DataType;class SeqList{public: SeqList() :_array(NULL) , _size(0) , _capacity(0) { cout << "SeqList( 阅读全文
posted @ 2016-08-21 17:16 请叫我小小兽 阅读(286) 评论(0) 推荐(0) 编辑
摘要: #include<iostream>using namespace std;class Date{public: Date(int year = 1900, int month = 1, int day = 1) //构造 :_year(year) , _month(month) , _day(da 阅读全文
posted @ 2016-08-18 14:43 请叫我小小兽 阅读(9703) 评论(1) 推荐(0) 编辑