数据结构代码实现
数据结构代码
努力努力还是努力
这个作者很懒,什么都没留下…
展开
-
判断是否为完全二叉树(c++)
#include<iostream>using namespace std;#define MaxSize 100typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;typedef struct{ BiTNode* data[MaxSize]; int front, rear;}SqQueue;void InitQueue(SqQueue&.原创 2022-03-23 17:01:25 · 659 阅读 · 0 评论 -
二叉树最长路径(c++)
#include<iostream>using namespace std;char path[100]; //存放路径char ans[100]; //临时存放int len;typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;void Creatbitree(BiTree& T, char s[], int& i.原创 2022-03-23 14:41:12 · 536 阅读 · 0 评论 -
冒泡、快速、直接插入、选择排序(c++)
#include<iostream>using namespace std;typedef struct LNode{ int data; struct LNode* next;}LNode, * LinkList;void CreatList(LinkList& L, int n){ L = new LNode; L->next = NULL; LinkList r = L; while (n--) { LinkList p = new LNode.原创 2022-03-25 11:10:19 · 297 阅读 · 0 评论 -
链表的选择排序(c++)
#include<iostream>using namespace std;typedef struct LNode{ int data; struct LNode* next;}LNode, * LinkList;void CreatList(LinkList& L, int n){ L = new LNode; L->next = NULL; LinkList r = L; while (n--) { LinkList p = new LNode.原创 2022-03-25 14:41:32 · 708 阅读 · 0 评论 -
二叉树叶子节点到根的路径输出(c++)
#include<iostream>using namespace std;char path[200];typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;void Creatbitree(BiTree& T, char s[], int& i){ if (s[i] == '0') T = NULL; else { T = .原创 2022-03-23 11:57:33 · 437 阅读 · 0 评论 -
二叉树结构相等判断(c++)
#include<iostream>using namespace std;typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;int flag;void CreatBitree(BiTree& T, char s[], int& i){ if (s[i] == '0') T = NULL; else { T = new Bi.原创 2022-03-22 18:46:53 · 293 阅读 · 0 评论 -
二叉排序树中输出特定值(c++)
#include<iostream>using namespace std;int c[200];int k;int flag; //题目中要求要间隔空格输出,设置flag来切换空格输出typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;void Creatbitree(BiTree& T, char e){ if (!T) {.原创 2022-03-23 11:25:22 · 69 阅读 · 0 评论 -
循环双向链表的节点交换(c++)
/*核心步骤:设q为p的前驱结点交换p和q。1、p和新前驱连接2、q和新后继连接3、p和q互相连接*/#include<iostream>using namespace std;typedef struct LNode{ int data; struct LNode* prior, * next;}LNode, * LinkList;void Creatlist(LinkList& L, int n){ L = new LNode; L->nex.原创 2022-03-24 14:04:06 · 1299 阅读 · 0 评论 -
二叉树高度、结点数统计、左右孩zi交换(c++)
#include<iostream>using namespace std;int a, b, c = 0; //a代表叶子结点,b代表度为1的结点,c代表度为2点结点typedef struct BiTNode{ char data; struct BiTNode* rchild, * lchild;}BiTNode, * BiTree;void CreatBiTree(BiTree& T, char s[], int& i){ if (s[i] ==.原创 2022-03-22 18:13:43 · 362 阅读 · 0 评论 -
二叉排序树判断,二叉树最大宽度计算(c++)
#include<iostream>using namespace std;int x;char c[100];int flag;int l = 1; //标记层数int a[200]; //记录每层宽度,即结点数typedef struct BiTNode{ char data; int level; //记录当前在第几层 struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;void Cer.原创 2022-03-23 10:28:33 · 147 阅读 · 0 评论 -
二叉树的嵌套括号输出(c++)
#include<iostream>using namespace std;typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;void CreatBitree(BiTree& T, char e){ if (T == NULL) { T = new BiTNode; T->data = e; T->lchild = NU.原创 2022-03-25 16:13:05 · 483 阅读 · 0 评论 -
二叉树先序、中序、后序、层次遍历(c++)
#include<iostream>using namespace std;#define MaxSize 100typedef struct BiTNode{ char data; struct BiTNode* lchild, * rchild;}BiTNode, * BiTree;typedef struct //定义顺序队{ BiTree data[MaxSize]; int front, rear;}SqQueue;void Ininqueue(Sq...原创 2022-03-22 16:49:31 · 235 阅读 · 0 评论 -
九九乘法表
#include<iostream>;using namespace std;int main(){ int n; cin >> n; int i = 1; while(i<=n) { int j = 1; while(j<=i) { int sum = i * j; if(sum<10) { cout << j << "*" << i << "=" <&l.原创 2022-05-14 22:51:20 · 83 阅读 · 0 评论