注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

天涯倦客的博客

祝福你朋友永远快乐!

 
 
 

日志

 
 

在WPF的Canvas上绘制二叉树  

2015-12-18 13:41:05|  分类: WPF |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

二叉树是数据结构最重要的部分之一,数据结构据说是学习编程的基础课程,虽然好像和平时工作关系不大,但面试时面试官很喜欢出点数据结构算法来刁难你。

一直以来,写算法好像只是C/C++的事,一串串数字输出在冰冷的手术台,sorry,是控制台上。但中间的过程,只能画在草纸上,或者像下盲棋一样用用脑汁算。其实我们多数人并不需要到高手的那个境界,只要会走法,能走两步就够了,所以有一个棋盘的话会对我们练习帮助很大。

下面是我在WPF窗口上画的一个二叉树:

image

每个节点都是一个Canvas,里面又包含一个Ellipse和TextBlock。

节点通过Margin属性来定位。在递归显示时,先计算子节点的Margin,然后再通过父节点和子节点的Margin算出连线的起点和终点坐标。需要注意的是,从上到下,树枝叉的角度要依次递减,不然可能会出现节点重叠或树枝相交。

虽然刚开始接触WPF,不过看起来不算太难,呵呵。

下载地址请点击

转载:http://www.cnblogs.com/XmNotes/archive/2012/03/03/2378478.html

  评论这张
 
阅读(128)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017