摘要: 二分查找 阅读全文
posted @ 2017-12-06 15:53 fengzw 阅读(249) 评论(0) 推荐(0) 编辑
摘要: LeetCode上面关于N皇后有两道题目:51 N-Queens:https://leetcode.com/problems/n-queens/description/ 52 N-Queens II:https://leetcode.com/problems/n-queens-ii/descript 阅读全文
posted @ 2017-12-04 19:03 fengzw 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 题目地址: https://leetcode.com/problems/longest-palindromic-substring/description/ 题目: 其实就是求一个字符串的最长回文子字符串。 解法: 我首先采取了暴力解法,不出意料地TLE了。这是超时的TLE解法: 这类题目一看就是用 阅读全文
posted @ 2017-12-03 17:24 fengzw 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 二叉搜索树的特殊性质 阅读全文
posted @ 2017-11-30 21:29 fengzw 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 这是一道很简单的题目,输出杨辉三角具体的某一行。很简单的一道题,但题目有要求只能用O(k)的额外空间,因此我们就不能把这个杨辉三角生成出来。 这是我原来的做法: 要只用O(k)的额外空间,就要从后面开始遍历起。这种节省空间的方法(把二维转为一维数组)在很多地方都用到了。 代码如下: 阅读全文
posted @ 2017-11-30 21:18 fengzw 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 最近在做LeetCode上面有关二叉树的题目,这篇博客仅用来记录这些题目的代码。 二叉树的题目,一般都是利用递归来解决的,因此这一类题目对理解递归很有帮助。 1.Symmetric Tree(https://leetcode.com/problems/symmetric-tree/descripti 阅读全文
posted @ 2017-11-28 20:04 fengzw 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 1.冒泡排序 冒泡排序的原理是对临近的两个数字进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或者最小的数字就被交换到了最后一位了。然后再从头开始进行这种比较和交换,一直到完成排序。 代码如下: 要注意的是,所谓冒泡,就是要相邻的两个元素比较,假如一个数是最大的,它会一直冒泡到 阅读全文
posted @ 2017-11-27 18:52 fengzw 阅读(1627) 评论(0) 推荐(0) 编辑
摘要: 1.文字描述: 已知一颗二叉树的前序(后序)遍历序列和中序遍历序列,如何构建这棵二叉树? 以前序为例子: 前序遍历序列:ABCDEF 中序遍历序列:CBDAEF 前序遍历先访问根节点,因此前序遍历序列的第一个字母肯定就是根节点,即A是根节点;然后,由于中序遍历先访问左子树,再访问根节点,最后访问右子 阅读全文
posted @ 2017-11-24 18:56 fengzw 阅读(17438) 评论(1) 推荐(0) 编辑
摘要: 算法期中考到一题关于拓扑序的题目,觉得很值得一写。 1.什么是拓扑序? 对一个有向无环图进行拓扑排序,假如图中存在一条从顶点A到顶点B的路径,则拓扑序中顶点A出现在顶点B的前面。要注意的是,这是对有向无环图而言的,假如图是有环的,拓扑序就无从谈起了。在这道题目中,已经假定了图是一个无环图。因此不需要 阅读全文
posted @ 2017-11-21 21:05 fengzw 阅读(6487) 评论(0) 推荐(0) 编辑
摘要: 一.130 Surrounded Regions(https://leetcode.com/problems/surrounded-regions/description/) 题目: 解法: 这道题的意思是将所有被X包围的O都变为X(边缘的不算),我们可以维护一个队列,先把四周的O的位置放进队列中, 阅读全文
posted @ 2017-11-14 20:42 fengzw 阅读(2226) 评论(0) 推荐(0) 编辑