会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Blog of Eric Wu
Do more of what makes you happy!
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
···
18
下一页
2018年8月24日
剑指offer(59)按之字形顺序打印二叉树
摘要: 题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 题目分析 这道题还是需要画图分析,不然不好找规律。 正常的广度遍历的话,都是同样的顺序,从左到右,而我们要在广度遍历的基础上改造为之字形遍历。
阅读全文
posted @ 2018-08-24 19:58 汕大小吴
阅读(824)
评论(0)
推荐(0)
2018年8月23日
剑指offer(58)对称的二叉树
摘要: 题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 题目分析 主要是要懂得如何去判断对称,比如描述一颗树我们可以通过两个序列就能得到这棵树的性质。因此我们可以这样想 对称就是左边和右边对称,那么我可以通过描述一种新的遍历序列,比如
阅读全文
posted @ 2018-08-23 22:54 汕大小吴
阅读(804)
评论(0)
推荐(0)
剑指offer(57)二叉树的下一个节点
摘要: 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 题目分析 这题一定要画图,因为只有画图我们才能分清楚下一个节点有哪些情况 1.如果一个节点有右子树,那么它的下一个节点就是它的右子树中的最左子节点。也就是
阅读全文
posted @ 2018-08-23 22:17 汕大小吴
阅读(673)
评论(0)
推荐(0)
剑指offer(56)删除链表中重复的节点
摘要: 一直忘记更新了,把剑指offer更新完吧。。。。 题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 题目分析 这道链表的题目不难,意思也很容易清楚,就是删除相邻的重复
阅读全文
posted @ 2018-08-23 20:40 汕大小吴
阅读(913)
评论(1)
推荐(0)
2018年8月20日
排序算法-(7)堆排序
摘要: 堆排序 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点
阅读全文
posted @ 2018-08-20 15:23 汕大小吴
阅读(437)
评论(0)
推荐(0)
2018年8月17日
JS中常见设计模式总结
摘要: github: https://github.com/14glwu/FEInterviewBox/tree/master/JS%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F JavaScript 中常见设计模式 单例模式 策略模式 代理模式 迭代器模式 发布订阅模式 命令模
阅读全文
posted @ 2018-08-17 00:53 汕大小吴
阅读(1839)
评论(0)
推荐(2)
JS设计模式(14)适配器模式
摘要: 什么是适配器模式? 定义:将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 主要解决:主要解决在软件系统中,常常要将一些"现存的对象"放到新的环境中,而新环境要求的接口是现对象不能满足的。 何时使用: 1、系统需要使用现有的类,而此类的
阅读全文
posted @ 2018-08-17 00:43 汕大小吴
阅读(885)
评论(0)
推荐(0)
JS设计模式(13)状态模式
摘要: 什么是状态模式? 定义:将事物内部的每个状态分别封装成类,内部状态改变会产生不同行为。 主要解决:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为。 何时使用:代码中包含大量与对象状态有关的条件语句。 如何解决:将各种具体的状态类抽象出来。 应用实例: 1、打篮球的时候运
阅读全文
posted @ 2018-08-17 00:06 汕大小吴
阅读(526)
评论(0)
推荐(0)
2018年8月16日
JS设计模式(12)装饰者模式
摘要: 什么是装饰者模式? 定义:动态地给一个对象添加一些额外的职责。就增加功能来说,装饰器模式相比生成子类更为灵活。 主要解决:一般的,我们为了扩展一个类经常使用继承方式实现,由于继承为类引入静态特征,并且随着扩展功能的增多,子类会很膨胀。 何时使用:在不想增加很多子类的情况下扩展类。 如何解决:将具体功
阅读全文
posted @ 2018-08-16 20:15 汕大小吴
阅读(1691)
评论(0)
推荐(1)
JS设计模式(11)中介者模式
摘要: 什么是中介者模式? 中介者模式:对象和对象之间借助第三方中介者进行通信。 定义:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 主要解决:对象与对象之间存在大量的关联关系,这样势必会导致系统的结构变得很复杂,同时若一个对
阅读全文
posted @ 2018-08-16 20:00 汕大小吴
阅读(869)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
···
18
下一页
公告