关闭

数据结构(十六) 线索二叉树讲解(带头节点后序加线索) 以及实现的完整代码

这篇先放放,等等再写。...
阅读(73) 评论(0)

数据结构(十五) 线索二叉树讲解(带头节点中序加线索) 以及实现的完整代码

这篇博客主要讲解的是中序线索化的基础上加上头节点(前序类似),这样做的好处是可以让所有的指针都不为空(即都有指向)。 下篇博客主要讲解后序加上线索化,这个有一定的难度。 实现的代码如下:...
阅读(177) 评论(0)

数据结构(十四) 线索二叉树讲解(不带头节点中序加线索) 以及实现的完整代码

中序线索话何上一篇博客的前序加线索化思路是一样的。 下面是实现的代码: //为二叉链表加中序线索化 (不带头节点) #include using namespace std; //线索化的结构体 typedef struct Node { char data; int ltag; int rtag; struct Node *lchild; struct Node *rchil...
阅读(98) 评论(0)

数据结构(十三) 线索二叉树讲解(不带头节点前序加线索) 以及实现的完整代码

引用线索二叉树的目的 因为二叉链表中,假设有n个节点,指针指向为空的指针有n+1个,为了利用这些指针,引入了线索化的概念,而且为二叉链表加入线索化后,对二叉树的遍历便的很方便。 加线索化分为:前序线索化,中序线索化,后序线索化。 实现的代码如下:...
阅读(174) 评论(0)

数据结构(十二) 二叉树的基本操作 --- 创建一个二叉树 前中后序遍历二叉树

//二叉树可以顺序存储也可以链式存储 顺序存储适合满二叉树和完全二叉树但不适合一般的二叉树 //用链式存储对二叉树的一些基本操作 //采用的二叉链表的方法 #include using namespace std; //二叉树的结构体 typedef struct Node { char data; struct Node *lchild; struct Node *rc...
阅读(74) 评论(0)

数据结构(十一)循环队列的基本操作----6个基本操作

//顺序队列存在一个问题 ---假溢出现象,为了解决这个问题,提出了循环队列//循环队列中存在队空和队满条件一样的情况,因此提出了牺牲一个空间的方法 //循环队列的基本操作 #include using namespace std;#define MAXSIZE 5//队列的结构体struct Node{int *base;int front;int rear;}; //队列的初始化操作void...
阅读(128) 评论(0)

数据结构(十) 链队列的基本操作 ----入队列,出队列,判断队列是否为空

//链队列的基本操作   #include using namespace std; //节点的结构体 struct Node { int data; struct Node *next; }; //队列的结构体 struct queue { struct Node * front; struct Node *rear; };  //队列的初始...
阅读(1032) 评论(0)

数据结构(九) 用顺序栈实现中缀表达式转为后缀表达式

//用栈实现中缀表达式转为后缀表达式  //采用的存储结构为顺序存储结构  #include   using namespace std; #define MAXSIZE 100  //栈的结构体 struct Node { int *base; int *top; int stackSize; };  //初始化栈的操作  void initStack(str...
阅读(113) 评论(0)

数据结构(八) 用顺序栈解决括号匹配的问题

//用栈括号匹配的问题  //采用的存储结构为顺序存储结构  #include   using namespace std; #define MAXSIZE 100  //栈的结构体 struct Node { int *base; int *top; int stackSize; };  //初始化栈的操作  void initStack(struct Nod...
阅读(230) 评论(0)

数据结构(七) 顺序栈实现数制转换

//用栈处理数制的转换 //采用的存储结构为顺序存储结构  #include   using namespace std; #define MAXSIZE 100  //栈的结构体 struct Node { int *base; int *top; int stackSize; };  //初始化栈的操作  void initStack(struct Node...
阅读(139) 评论(0)

数据机构(五) 顺序栈的基本操作 --- 包含初始化,入栈和出栈

//顺序栈的基本操作  #include using namespace std; #define MAXSIZE 5 //栈的结构体  struct Node { int *base; int *top; int stackSize; }; //栈的初始化 void initStack(struct Node &S) { S.base = new i...
阅读(138) 评论(0)

数据机构(六) 链栈的基本操作

//链栈的基本操作  #include using namespace std; //栈的结构体  struct Node  {   int data; struct Node *next;  };  //链栈的初始化操作  void initStack(Node *&S)  {   S == NULL;  }   //链栈的进栈操作  void...
阅读(123) 评论(0)

数据结构(四)双向链表的基本操作

#include using namespace std; typedef struct Node { int data; struct Node *prior; struct Node *next; }Node; //双向链表的创建  Node *create(int n) { Node *head,*p1,*p2; int data; cout h...
阅读(72) 评论(0)

数据结构(三) 单链表的排序 ----按插入方法排序(带头节点)

//链表的排序    ---------按插入方法排序 //算法思想:先把头节点断掉,然后判断第一个数和第二个数的大小,如果第一个数小于第二个数,那么进入循环,找到排好序的最后一个,如果没有,那么将头节点连上那个节点  void insertSort(struct Node *head) { struct Node *p1,*p2,*p3,*p4,*p5; p1 = head->next...
阅读(84) 评论(0)

数据结构(二)单链表的逆序(带头节点)

//带头节点的  #include using namespace std; struct Node { int data; struct Node *next; }; //尾插法  struct Node *create(int n) { struct Node *head,*p1,*p2; int data; p1 = p2 = NULL; hea...
阅读(79) 评论(0)

数据结构(一)单链表的基本操作(不带头节点)

#include using namespace std; struct Node{ int data; struct Node *next; }; //头插法创建链表  struct Node * create(int n) { struct Node *p1,*p2,*head; int data; p1 = p2 = head = NULL; p1 ...
阅读(111) 评论(0)

qt处理浏览器问题

qt5浏览器问题的解决方法: 1. C:\Qt\Qt5.3.2\Tools\mingw482_32\opt\bin中的libeay32.dll和ssleay32.dll拷贝到 C:\Qt\Qt5.3.2\5.3\mingw482_32\bin下就能够运行了。...
阅读(158) 评论(0)

在虚拟机中安装fedora 8的方法

我的linux安装是在虚拟机上的安装,操作系统是Fedora 8 1、 打开计算机,启动虚拟机VMware Player.点击创建新虚拟机,进入下一个界面。   2、点击安装程序光盘映像文件,点击浏览,找到所需安装的Fedora 8映像,找到后显示已检测到Fedora。点击“下一步“。 3、虚拟机命名和安装位置可以选择性填写。然后点击“下一步“。 4、选择安装Fedora的磁盘大小,点击...
阅读(482) 评论(0)
    个人资料
    • 访问:3538次
    • 积分:208
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:0篇
    • 译文:2篇
    • 评论:0条