- 博客(9)
- 收藏
- 关注
原创 二叉树删除节点(C语言)
二叉树删除节点删除分为四种情况这个节点左右孩子都有这个节点没有左右孩子这个节点只有左孩子这个节点只有右孩子1.查找节点位置 struct TreeNode *p = NULL;//遍历指针 struct TreeNode *fp = NULL;//记录指针的父节点 p = root; while(1)//寻找要删除的位置 { fp = p;//记录指针的父节点 if(p ->data > data)//左边找 { p = p ->lchild;
2021-05-02 15:47:10
5213
3
原创 平衡二叉树的创建(C语言)
平衡二叉树的创建第一种情况,需要将2作为根节点,进行顺时针旋转;//平衡二叉树 右旋(顺时针)struct TreeNode *AVL_Right(struct TreeNode *p){ struct TreeNode *q = p -> lchild; p -> lchild = q -> rchild; q -> rchild = p; return q;}2.第二种情况,需要将2作为根节点,进行逆时针旋转;//平衡二叉树 左旋(逆时针)str
2021-04-28 17:09:05
1627
原创 多机通信实验(c51代码)
多机通信实验原创代码,供参考。编程控制单片机驱动多台单片机,实现多台单片机之间的通信。具体要求为:(1)主机设置有多个按钮,每个按钮对应一台通信的从机。(2)按下主机中的按钮,表示与其对应的从机进行通信。主机将发送一个数字到该从机上,并在该从机的LED数码管上进行显示。(3)为了便于观察效果,建议主机发送的数字呈一定规律。比如,依次增加。主机代码#include<reg51.h>#include<intrins.h>#define a_addr 20//设置接收
2021-04-28 16:10:26
3853
2
原创 双机通信综合实验(c51代码)
双机通信综合实验(c51代码)原创代码,供参考编程控制单片机实现复杂功能的双机通信。具体要求为:(1)甲机可将4*4的矩阵上对应的按键值通过串行口发送给乙机(2)甲机保留最近传送给甲机的八个键值,在自己的八位一体LED数码管上一位一位地进行显示(数码管的动态显示方式)。(3)乙机接收到甲机发送的字符后,将其显示在自己的八位一体数码管上(数码管的静态显示方式)(4)乙机接收到甲机发送的字符后,需反馈给甲机截止至目前已收到的字符个数(约定小于256)。甲机在收到反馈的字符个数后,将其值通过八个发光二
2021-04-26 18:02:58
4212
原创 C51单片机实现双机通讯
C51单片机实现双机通讯(代码为原创,供参考)一、实验任务:编程控制单片机实现与其他单片机之间的双机通信。要求实现以下功能:1、甲机所连矩阵键盘(0~F)按下的键值,可以通过串行口发送到乙机,并在乙机的LED数码管上进行显示。2、乙机的数码管能够显示最近从甲机收到的八个字符(动态显示)。3、乙机能将当前已累计收到的字符个数反馈给甲机(最大为255,例如当前已收到10个字符,则反馈10)。4、甲机在收到乙机反馈的字符个数后,将此值的二进制显示在八个发光二极管上(如收到反馈值10,则显示00001
2021-04-22 15:42:29
16744
7
原创 栈求表达式的值(完整代码),带括号版;包括栈的基本操作
栈求表达式的值main.c#include"biaodashi.h"int main(){ char str[128]; scanf("%s",str); GetValue(str); return 0;}
2021-04-20 16:44:59
689
原创 递归算法求树高代码(c语言)
递归算法求树高代码int GetHeight(struct TreeNode * tree){ if(!tree)//空树 return 0; int L = GetHeight(tree ->lchild);//求得左子树的高度 int R = GetHeight(tree ->rchild);//求得右子树的高度 return (L > R ? L : R ) + 1;}...
2021-04-20 15:23:29
1304
原创 链式队列的基本操作,初始化,销毁,清空,检查是否为空,获取对头元素,入队,出队
链式队列的基本操作//InitQueue 初始化一个队列//DestroyQueue 销毁一个队列//ClearQueue 清空一个队列//CheckQueueEmpty 检查一个队列是否为空//GetFront 获取队头的元素 但是不会出队列//InQueue 入队//OutQueue 出队main.c#include"QueueList.h"int main(){ struct queue * head = InitQueue();//初始化 int data; print
2021-04-20 15:16:25
2113
原创 带头结点的链式栈代码
带头结点的链式栈代码main.c文件代码#include"stack.h"int main(){ struct stack * head = InitStack();//初始化 int data;//输入的数据 printf("请输入数据,输入-1结束\n"); while(1) { scanf("%d",&data); if(data == -1) { break; } Push(head,data);//入栈 } GetTop(head);//求栈
2021-04-20 15:05:19
446
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人