楼主: 李国静
2427 0

[学习分享] 利用matlab实现二叉树的树形显示 [推广有奖]

  • 28关注
  • 0粉丝

高中生

85%

还不是VIP/贵宾

-

威望
0
论坛币
18 个
通用积分
0
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
832 点
帖子
27
精华
0
在线时间
13 小时
注册时间
2011-5-22
最后登录
2020-1-5

楼主
李国静 学生认证  发表于 2014-7-29 20:58:29 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
利用matlab实现二叉树的树形显示


        当求出二维矩阵m以后可以借助Matlab绘图更为生动的树形图,如下面的代码所示,将m矩阵赋值给mx,利用下面的程序可以得到比较不错的效果图:

  • clear all;  
  • clc;  
  • close all;  
  •   
  • mx =...  
  •     [0     0     0     1     0     0     0  
  •      0     1     0     0     0     1     0  
  •      1     0     1     0     1     0     0];  
  •    
  • cnt = 0;  
  •   
  • clear mx;  
  •   
  • mx  = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  
  •         0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0  
  •         0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0  
  •         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0  
  •         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0];  
  • [row,col] = size(mx);  
  • for i = 1:row  
  •      for j = 1:col  
  •          hold on;  
  •          if (mx(i,j) == 1)  
  •             plot(j,row-i,'Marker','.','Markersize',30,'MarkerFaceColor','k','MarkerEdgeColor','k');  
  •             text(j,row-i-0.05*row,char('A'+cnt));  
  •             cnt = cnt + 1;  
  •          end  
  •      end  
  • end  
  •    
  • ylim([-1,row]);  
  • grid on;  
  •    
  • d = col + 1;  
  • for i = 1:row-1  
  • %      for j = 1:col  
  • %          if (mx(i,j) == 1)  
  • %              d = j;  
  • %              break;  
  • %          end  
  • %      end  
  •     d = d / 2;  
  •      for j = 1:col  
  •          if (mx(i,j) == 1)  
  •              for k = 1:col  
  •                  if ((mx(i+1,k) == 1) & (abs(k - j) <= floor(d/2)))  
  •                      hold on;  
  •                      plot([j,k],[row-i,row-(i+1)],'-k','Linewidth',2.5);  
  •                  end  
  •              end  
  •          end  
  •      end  
  • end  








二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:matlab实现 MATLAB atlab matla Atl 效果图 matlab 二叉树 文章 程序

学好统计,

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 21:46