文章分类 -  数据结构

摘要:二叉树判定问题 1.判定是否为二叉排序树 //1.判定是否为二叉排序树 //思想:对于一个二叉排序树进行先序遍历得到的是一个递增的序列,故每个结点都会大于其前驱结点的内容 int prev=0; int flag=1;//表示是二叉排序树 void Inorder(BiTnode *T){ if(T 阅读全文
posted @ 2021-10-28 11:04 CNPolaris 阅读(115) 评论(0) 推荐(0)
摘要:第六章二叉树和树结构算法设计技术 二叉链表存储结构 typedef struct{ datatype data; Bnode *lchild,*rchild; }Bnode; typedef Bnode *bitree;//结点指针类型 6.2遍历算法的简单变化及应用 6.2.1二叉树遍历算法 // 阅读全文
posted @ 2021-10-10 11:06 CNPolaris 阅读(102) 评论(0) 推荐(0)
摘要:第五章链表结构算法设计技术 例5.1单链表的遍历 void print(node*L){ node *p=L; while(p!=NULL){ cout<<p->data; p=p->next; } } //拓展 //1.带头结点的 void print_with_head(node*L){ nod 阅读全文
posted @ 2021-10-08 11:09 CNPolaris
摘要:9.6有向图用邻接矩阵存储,设计算法求解顶点V的出度入度 void getDegree(Graph &G,int &i,int &ind,int &outd){ //ind,outd分别为入度和出度 int j,ind=0,outd=0; //求顶点i的入度 for(j=1;j<=G.VerNum; 阅读全文
posted @ 2021-09-11 13:38 CNPolaris 阅读(84) 评论(0) 推荐(0)
摘要:/* 将两个递增有序的单链表合并成一个递减有序的单链表,并且使时间复杂度为两个链表的长度之和 **/ linknode merge(likn A,link B){ linknode *pa,*pb,*p,*L; L->next=NULL; pa=A.head->next; pb=b.head->ne 阅读全文
posted @ 2021-08-07 17:16 CNPolaris 阅读(33) 评论(0) 推荐(0)