07 2012 档案

摘要:我们知道,二叉查找树相对来说比较容易形成最坏的链表情况,所以前辈们想尽了各种优化策略,包括AVL,红黑,以及今天要讲的Treap树。 Treap树算是一种简单的优化策略,这名字大家也能猜到,树和堆的合体,其实原理比较简单,在树中维护一个"优先级“,”优先级“采用随机数的方法,但是”优先级“必须满足根堆的性质,当然是“大根堆”或者“小根堆”都无所谓,比如下面的一棵树:从树中我们可以看到:①:节点中的key满足“二叉查找树”。②:节点中的“优先级”满足小根堆。一:基本操作1:定义 1 #region Treap树节点 2 /// <summary> 3 //... 阅读全文
posted @ 2012-07-30 02:01 一线码农 阅读(23564) 评论(6) 推荐(19) 编辑
摘要:上一篇我们聊过,二叉查找树不是严格的O(logN),导致了在真实场景中没有用武之地,谁也不愿意有O(N)的情况发生,作为一名码农,肯定会希望能把“范围查找”做到地球人都不能优化的地步。 当有很多数据灌到我的树中时,我肯定会希望最好是以“完全二叉树”的形式展现,这样我才能做到“查找”是严格的O(logN),比如把这种”树“调正到如下结构。 这里就涉及到了“树节点”的旋转,也是我们今天要聊到的内容。一:平衡二叉树(AVL)1:定义 父节点的左子树和右子树的高度之差不能大于1,也就是说不能高过1层,否则该树就失衡了,此时就要旋转节点,在编码时,我们可以记录当前节点的高度,比如空节... 阅读全文
posted @ 2012-07-22 19:58 一线码农 阅读(58555) 评论(45) 推荐(36) 编辑
摘要:一直很想写一个关于树结构的专题,再一个就是很多初级点的码农会认为树结构无用论,其实归根到底还是不清楚树的实际用途。一:场景:1:现状 前几天我的一个大学同学负责的网站出现了严重的性能瓶颈,由于业务是写入和读取都是密集型,如果做缓存,时间间隔也只能在30s左右,否则就会引起客户纠纷,所以同学也就没有做缓存,通过测试发现慢就慢在数据读取上面,总共需要10s,天啊...原来首页的加载关联到了4张表,而且表数据中最多的在10w条以上,可以想象4张巨大表的关联,然后就是排序+范围查找等等相关的条件,让同学抓狂。2:我个人的提供解决方案① 读取问题 既然不能做缓存,那没办法,我们需要自己... 阅读全文
posted @ 2012-07-21 15:44 一线码农 阅读(44074) 评论(47) 推荐(55) 编辑
摘要:从这一篇往前看,其实wpf中还有很多东西没有讲到,不过我的原则还是将比较常用的知识点过一遍,如果大家熟悉了这些知识,基本功也就打的差不多了,后续可以等待老邓的wpf细说系列,这里我先顶老邓一下。一:用户控件(UserControl) 对于用户控件的认识,我想大家还是很熟悉的,因为这玩意我们在webform或者在mvc中用的可多了,我们看看wpf中怎么使用,首先我们要知道"用户控件“继承自UserControl,而UserControl继承自ContentControl,也就是上上一篇说的”内容控件”。第一步:在vs中的添加项中找到一个“用户控件WPF”,点击添加即可。第二步:我们发现 阅读全文
posted @ 2012-07-15 17:41 一线码农 阅读(14980) 评论(22) 推荐(29) 编辑
摘要:这一篇我们聊聊wpf中的画刷,在wpf中如果想玩各种花哨,那么如何使用画刷则是我们的基本功,首先看一下类图从图中可以看出,wpf有5种画刷和1种自定义画刷,都是继承自基类Brush,我们看看基类中有哪些好玩的东西。这里有3个比较感兴趣的属性,分别属于”透明度“和”图像转换“,好,下面我们一一解说。一:SolidColorBrush(实心画刷) 实心画刷是我们用的最多的,也是最简单的一个,其实也就是填充色的意思,一个很简单的例子:其实这里的Background=Red使用的就是SolidColorBrush,xaml进行解析时,发现Background是Brush类型,刚才我也说了... 阅读全文
posted @ 2012-07-14 23:34 一线码农 阅读(19423) 评论(6) 推荐(14) 编辑
摘要:这篇我们来大概的看一下WPF的各种神马控件,首先我们要知道所有的wpf控件都是继承自Control,从用途上可以分为四种 1:内容控件(Content Controls) 2:条目控件(Items Controls) 3:文本控件(Text Controls) 4:范围控件(Range Controls)一:内容控件 内容控件的最大的特征就是有一个Content属性,从前面的文章中,我们多多少少也知道Content接收的是一个Object类型,或许我们会立即想到莫非Button就是一个内容控件,确实,Button算是一个内容控件,凡是内容控件都继承自Cont... 阅读全文
posted @ 2012-07-09 01:32 一线码农 阅读(20626) 评论(16) 推荐(22) 编辑

点击右上角即可分享
微信分享提示