上一页 1 ··· 3 4 5 6 7 8 9 10 下一页
摘要: 题目来源:http://www.lintcode.com/zh-cn/problem/a-b-problem/ 直接return a + b;也可以通过测试,但这样就没意思了。 阅读全文
posted @ 2016-04-29 13:29 Pearl_zju 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目来源:http://www.lintcode.com/zh-cn/problem/fibonacci/ 一开始用递归的方法,error,超时。 i<=n-2,返回c,error。 阅读全文
posted @ 2016-04-28 22:39 Pearl_zju 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 对《大话数据结构》P365~P368—散列表查找实现,进行了自己的理解并完善了代码。 对于P353~P365,散列表概述,散列函数的构造,处理散列冲突的方法,书上讲得比较简单。深入学习还需要看算法导论。 代码和解释如下(VS2012测试通过): 运行结果: 阅读全文
posted @ 2016-04-28 15:18 Pearl_zju 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 对《大话数据结构》P313~P340—二叉排序树和平衡二叉树,进行了自己的理解并完善了代码。 一、二叉排序树 对如下二叉排序树进行中序遍历,就可以得到有序的序列{35,37,47,51,58,62,73,88,93,99}。 查找: 插入: 删除: 1、删除的是叶子节点 2、删除的结点仅有左孩子或右 阅读全文
posted @ 2016-04-27 16:31 Pearl_zju 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 对《大话数据结构》P298~P306—有序表查找,进行了自己的理解并完善了代码。 一、二分查找(折半查找) 为了体现二分查找时间复杂度上优于顺序查找,先给出顺序查找的代码。 顺序查找的代码和解释如下(VS2012测试通过): 二分查找的前提是线性表中的记录必须是关键码有序(通常从大到大)并采用顺序存 阅读全文
posted @ 2016-04-26 14:25 Pearl_zju 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 这部分为了日后方便复习,直接摘录《大话数据结构》P428~430。不擅长记忆,理解每种排序算法之后,面试时候可以推一下。 阅读全文
posted @ 2016-04-25 22:35 Pearl_zju 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 对《大话数据结构》P417~P427—快速排序,进行了自己的理解并完善了代码。 一、快排普通版 基本思想:通过一趟排序,将待排记录分割成以枢轴为分界的独立的两部分,一部分的数都比枢轴小,另一部分的数都比枢轴大。这句话也体现了枢轴的作用。再通过递归,对每部分继续排序。 void QSort(SqLis 阅读全文
posted @ 2016-04-25 20:53 Pearl_zju 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 对《大话数据结构》P406~P416—归并排序,进行了自己的理解并完善了代码。 一、递归实现归并排序 代码和解释如下(VS2012测试通过): 运行结果: 举个4个数的例子便于理解递归过程,只需要把#define MAXSIZE 9修改成#define MAXSIZE 4。 归并排序,原理是假设初始 阅读全文
posted @ 2016-04-25 14:33 Pearl_zju 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 对《大话数据结构》P396~P406—堆排序,进行了自己的理解并完善了代码。 一、堆排序之前需要掌握以下知识 1、完全二叉树 例如下图这样的,编号出现空档,就不是完全二叉树。 2、完全二叉树的性质 这三个性质中最重要的是1,看图就很好理解,即如果i>1,i的双亲节点是i/2。 3、堆 4、堆的性质 阅读全文
posted @ 2016-04-24 14:56 Pearl_zju 阅读(463) 评论(8) 推荐(2) 编辑
摘要: 对《大话数据结构》P389~P396—希尔排序,进行了自己的理解并完善了代码。 代码和解释如下(VS2012测试通过): 运行结果: 关于时间复杂度的分析,直接把书上的内容copy过来,不是很理解,欢迎讨论。 阅读全文
posted @ 2016-04-22 23:19 Pearl_zju 阅读(148) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 下一页