数据结构和算法
一程山路
神之所以被称之为神,是因为他做到了人做不到的事情。
展开
-
中序线索化二叉树以及中序遍历线索化二叉树、倒中序遍历线索化二叉树
中序线索化二叉树的思想:按照中序的前驱后继关系,若p的左子树为空,则左子树指向p的中序前驱,若p的右子树为空,则p的右子树节点指向p的后继,若是子树都有,就不用捣腾了。第一个节点的左子树为空(此节点一定是叶节点,而且没前驱,所以是空),最后一个节点的右子树也是空。typedef char ElemType;typedef enum{ LINK = 0, THREAD = 1 }PointTag;原创 2017-10-07 18:48:21 · 2161 阅读 · 0 评论 -
二叉树的创建与遍历(递归)
我总结了二叉树的创建方法,有以下几个:由前序遍历创建二叉树、直接创建二叉树、用前序和中序创建二叉树、用中序和后序创建二叉树当然 还有很多。#include "BinaryTree.h"#include #include #include typedef char ELEM_TYPE;typedef struct BtNode{BtNode *原创 2017-09-21 21:26:43 · 746 阅读 · 0 评论 -
用栈实现二叉树的遍历(非递归)
先实现栈#include <stdio.h>#include <stdlib.h>#include <string.h>typedef char ElemType;#define STACKSIZE 20typedef struct st{ElemType *data;int top;int MaxSize;}stack;void ...原创 2017-09-20 10:52:13 · 7150 阅读 · 3 评论