二叉树:树的每个节点最多有两个子节点。1.实现二叉链表的结构://节点结构template<classT>structBinaryTreeNode{ BinaryTreeNode<T>*_left;//左子树 BinaryTreeNode<T>*_right;//右子树 T_data;//数据域 //构造函数 BinaryTreeNode(constT&x) :_left(..
分类:
编程语言 时间:
2016-05-26 19:09:53
阅读次数:
183
链栈的基本操作实现代码如下:#include<iostream>usingnamespacestd;#defineTRUE1#defineFALSE0//链栈的结构typedefstructnode{ intdata; structnode*next;}LinkStackNode;typedefLinkStackNode*LinkStack;//链栈进栈intPush(LinkStacktop,intx)//将数据元素x压入栈top中..
分类:
其他好文 时间:
2016-05-13 15:42:16
阅读次数:
342
循环队列的初始化、入队、出队等基本操作,实现代码如下:#include<iostream>usingnamespacestd;#defineTRUE1#defineFALSE0//循环队列的类型定义#defineMAXSIZE50//队列的最大长度typedefstruct{ intelement[MAXSIZE];//队列的元素空间 intfront;//头指针指示器 intrear;..
分类:
其他好文 时间:
2016-05-13 04:46:30
阅读次数:
495
链队列的初始化、入队、出队等基本操作实现代码如下:#include<iostream>usingnamespacestd;#defineTRUE1#defineFALSE0//链队列定义typedefstructNode{ intdata;//数据域 structNode*next;//指针域}LinkQueueNode;typedefstruct{ LinkQueueNode*front;//队头指针front Li..
分类:
其他好文 时间:
2016-05-10 18:56:25
阅读次数:
235
广义表的四个特征:(1)广义线性表;(2)元素复合性;(3)元素递归性;(4)元素共享性
广义表的上述四个特征对于他的使用价值和应用效果起到了很大的作用。广义表的结构相当灵活,它可以兼容线性表、数组、树和有向图等各种常用的数据结构。当二维数组的每行或每列作为子表处理时,二维数组就是一个广义表;如果限制广义表中元素的共享和递归,广义表和树对应;如果限制广义表的递归并允许数据共享,则广义表和...
分类:
其他好文 时间:
2016-04-22 19:46:51
阅读次数:
253
单链表的初始化、增删查改、遍历一次找中间结点、删除一个无头单链表的非尾结点(不给头结点)#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
typedefintDataType;
typedefstructListNode
{
structListNode*_next;
DataType_data;
}ListNode;
v..
分类:
编程语言 时间:
2016-03-24 16:41:53
阅读次数:
366
我在之前一篇博客《C语言实现单链表的基本操作》实现了如何清空一个单链表,现在换成了双向的非循环链表,整体思路是一样的。代码上传至:https://github.com/chenyufeng1991/ClearDoubleLinkedList 。核心代码如下:Node *ClearDoubleLinkedList(Node *pNode){
if (pNode == NULL) {
...
分类:
编程语言 时间:
2016-02-28 13:58:39
阅读次数:
178
我在前面几篇博客中《C语言实现链表节点的插入》《C语言实现链表节点的删除》《C实现头插法和尾插法来构建链表》《C语言实现链表的基本操作》实现了链表的很多增删改查操作。这里我们要来实现链表的逆序打印,使用C来实现。代码上传至 https://github.com/chenyufeng1991/ReverseLinkedList 。 基本算法是:(1)使用尾插法构建原链表;(2)依次遍历原...
分类:
编程语言 时间:
2016-02-26 14:19:58
阅读次数:
315
数据结构学着就是有意思,真诚推荐郝斌老师的数据结构视频,真的讲解的非常详细,容易理解。 一直在跟着郝斌老师的数据结构视频学习,看完了队列的视频,记录下来,总结一下。 队列的定义:队列是一种特殊的线性表,只允许在表的头部(front处)进行删除操作,在表的尾部(rear处)进行插入操作的线性数...
分类:
其他好文 时间:
2015-11-02 17:12:58
阅读次数:
228
终于有可以有时间写点数据结构的学习总结了,前段时间一直在紧张的忙一些项目,都没有空出时间来学习数据结构,现在终于可以稍微喘口气了,还是数据结构有意思,这两天看了点栈的东西,写下来总结一下,有错误的地方希望看到的朋友指出来,感激不尽。 根据学习,栈就是一种线性数据结构,栈的运算只能在表的一段进行...
分类:
其他好文 时间:
2015-10-31 11:18:29
阅读次数:
128