数据结构测试卷
发表于|更新于|datastruct
|总字数:0|阅读时长:1分钟|浏览量:
文章作者: Lumjiel
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 JIE的笔记本!
相关推荐
2026年03月14日
专业课数据结构部分合集
2026年03月14日
数据结构第二次习题课
数据结构第二次习题课二叉树按二叉链表形式存储 建立完全二叉树的算法 12345678910111213141516171819typedef struct BTNode{ int data; struct BTNode *lchild,*rchild;}BTNode,*BiTree;//采用先序遍历构建二叉树BiTree CreateTree(){ int x; BiTree *bt; scanf("%d",&x); if(x==0) bt=NULL; else{ bt=(BiTree)malloc(sizeof(BTNode)); bt->data=x; bt->lchild=CreateTree(); bt->rchild=CreateTree(); } return bt;} 写一个判断给定的二叉树是否是完全二叉树的算法 1234567891011121...
2026年03月14日
第四章树和二叉树
第四章树和二叉树二叉树的存储结构1234567891011121314151617181920212223typedef int ElemType;//顺序存储结构体定义描述#define MAX_SIZE 100typedef ElemType SqBitree[MAX_SIZE];SqBiTree bt;//链式存储结构//二叉链表形式:typedef struct BTNode { ElemType data; struct BTNode *lchild,*rchild;}BTNode,*BiTree;//三叉链表形式:typedef struct BTNode{ ElemType data; struct BTNode *lchild,*rchild,*parent;}BTNode,*BiTree;void visit(BiTree T){ cout<<T->data<<" ";} 二叉树的遍历递归写法1234567891011...
2026年03月14日
第二章栈和队列
第二章栈和队列栈的基本操作123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990const int maxSize=100010;//顺序栈typedef struct{ ElemType data[maxSize];//存放栈中元素 int top;//存放栈顶指针}SqStack;/*链式栈 入栈和出栈都在表头执行,相当于只处理表头一端的单链表出栈:相当于删除链表的一个结点入栈:相当于头插法插入结点*/typedef struct LinkNode{ ElemType data; struct LinkNode *next;}*LiStack;/*共享栈:利用栈底位置相对不变的特性,让两个顺序栈共享一个数组空间,将两个栈底设置在数...
2026年03月14日
数据结构第一次习题课
第一次习题课阶乘和123456789101112131415161718int cal(int x){ int cal=1; for(int i=2;i<=x;i++){ cal*=x; } return cal;}int fun(LinkList L){ LNode p=L->next; int ans=0; while(p){ ans+=cal(p->data); p=p->next; }} 数组在长度为N的数组arr中,将小于等于arr[0]的数放在数组的左半部分,大于arr[0]的放在右半部分, arr[0]介于中间,输出处理后的数组 123456789101112131415161718192021222324#include<iostream>using namespace std;const int N=100010;int arr[N];int main()...
2026年03月14日
第三章串数组广义表
第三章串数组广义表大于输入年份且四位不同的数字123456789101112131415161718192021222324252627282930313233343536#include<iostream>using namespace std;int y;int cnt[4];int vis[10];void change(int year){ int n=year; int i=0; while(n){ cnt[i++]=n%10; n/=10; }}bool check(int year){ change(year); for(int i=0;i<10;i++) vis[i]=0; for(int i=0;i<4;i++) if(vis[cnt[i]]==0) vis[cnt[i]]=1; else{ return false; ...
评论



