1、1、欧拉图判定和应用【实验内容】 判断一个图是不是,如果是,求出所有欧拉路【实验原理和方法】(1)用关系矩阵 R= 表示图。nijr)((2)对无向图而言,若所有结点的度都是偶数,则该图为欧拉图。C 语言算法:flag=1;for(i=1;i#include #define N 13struct tree float num;struct tree *Lnode;struct tree *Rnode;* fpN;/保存结点char s2*N;/放前缀码void inite_node(float f,int n)/生成叶子结点int i;struct tree *pt;for(i=0;inum=
2、fi;pt-Lnode=NULL;pt-Rnode=NULL;fpi=pt;void sort(struct tree * array,int n)/将第 N-n 个点插入到已排好序的序列中。int i;struct tree *temp;for(i=N-n;inumarrayi+1-num)temp=arrayi+1;arrayi+1=arrayi;arrayi=temp;struct tree * construct_tree(float f,int n)/建立树int i;struct tree *pt;for(i=1;inum=fpi-1-num+fpi-num;pt-Lnode=fp
3、i-1;pt-Rnode=fpi;fpi=pt;/w1+w2sort(fp,N-i);return fpN-1;void preorder(struct tree *p,int k,char c) int j;if(p!=NULL) if(c=l) sk=0;else sk=1;if(p-Lnode=NULL) /P 指向叶子printf(“%.2f: “,p-num);for(j=0;jLnode,k+1,l);preorder(p-Rnode,k+1,r);void main()float fN=2,3,5,7,11,13,17,19,23,29,31,37,41;struct tree *head;inite_node(f,N); /初始化结点head=construct_tree(f,N);/生成最优树s0=0;preorder(head,0,l);/遍历树