数据结构--基础算法
本专栏 主要介绍 编程过程中
常用的数据结构
及常用的基础算法 思想
清水迎朝阳
多年windows下c++客户端开发,或多或少踩了很多坑,积累了一些经验
展开
-
栈的链式实现形式
注: 模板类的声明与实现都要写在.h文件中,不能写在.cpp文件中。 因为,模板只有在具体实例化时,才去实现。 链式栈模板类: #include "stdafx.h" #define NULL 0 template class Stack; //定义--节点 template class StackNode{翻译 2012-03-16 09:31:16 · 855 阅读 · 0 评论 -
栈的数组构建形式
#include #include using namespace std; template class Stack //创建栈模板 { //定义栈的操作集合 public: Stack(int size); //栈的构造函数 ~Stack(); //栈的析构函数 void Push(T a); //将元素翻译 2012-03-12 17:25:17 · 1124 阅读 · 0 评论 -
双向链表
双向链表结构: 空双向链表: 非空双向链表: 双向链表节点定义: template class DblList; template class DblNode { friend class DblList; public: DblNode(T uniqVal,DblNode *priorT,DblNode *翻译 2012-03-06 10:07:05 · 955 阅读 · 0 评论 -
单链表 模板类
#include using namespace std; //声明单链表类模板(为了说明友元类) template class List; //定义链表结点类模板 template class ListNode{ //单链表类是链表结点类的友元类 friend class List; Type data; //结点数据域 ListNode *n翻译 2012-03-05 14:10:37 · 4183 阅读 · 0 评论 -
单链表的基础操作
单链表的基础操作 包括: 查找、插入、删除、创建链表等。 以下直接用程序进行说明: #include // malloc free 头文件 #include // 节点定义 typedef struct Node { int data; struct Node *next; }Node; // 查找第一个值为X的节点 No原创 2012-03-02 17:05:27 · 998 阅读 · 0 评论