Logan's

Making a World of Difference

排序:
默认
按更新时间
按访问量

LintCode背包问题总结

背包是动态规划的一种题型,它的特点如下: 特点:  1. 用值作为dp维度 2. dp过程就是填写矩阵 3. 可以用滚动数组进行优化 有个背包问题九讲的链接推荐:背包问题九讲 92. Backpack Given n items with size Ai, an integer m denote...

2017-08-01 12:26:22

阅读数:1019

评论数:0

LintCode堆栈题总结

这篇是基于我之前的一篇文章的:LintCode数据结构题 那篇文章介绍了基本的堆栈实现以及一些基本的应用。现在来看一下更多的题目和应用来扩展一下对堆栈的实践。 575. Expression Expand 要求对表达式进行展开。比如 s = 3[2[ad]3[pf]]xyz, return ada...

2017-06-05 13:01:33

阅读数:610

评论数:0

LintCode线段树/扫描线/查询题总结

线段树(Segment Tree)又叫区间树(Interval Tree),它实际上是一颗二叉树,北大的POJ上有关于这个高级数据结构的介绍:http://poj.org/summerschool/1_interval_tree.pdf LintCode上线段树专题下有这些题目:

2017-05-20 06:33:49

阅读数:884

评论数:0

LintCode高级数据结构/Trie/并查集/搜索题总结

搜索也是很常考的题目,有些搜索要求一些高级的数据结构来加速搜索过程,比如Trie Tree,并查集Union Find等等。我们先来看看Trie Tree,Trie Tree其实就是一种树

2017-05-04 03:17:47

阅读数:744

评论数:0

LintCode动态规划题总结

不知道什么是动态规划的,传送门在这儿:[干货]动态规划十问十答 动态规划进阶:动态规划:从新手到专家 相信看完上面两个链接的博客后,应该对于动态规划有一个新的认识和了解了。接下来就来看看LintCode上DP(下文我将以DP或者Dynamic Programming代替动态规划)的题目。

2016-08-13 23:45:39

阅读数:1708

评论数:0

LintCode排序题总结

排序作为CS的基本功,需要单独拿出来总结一下。 这是一个直观地可以观看各种排序算法的可视化效果的网址(强烈推荐):http://www.cs.usfca.edu/~galles/visualization/ComparisonSort.html 184. Largest Number 给定一个数组...

2016-08-12 17:34:16

阅读数:732

评论数:0

LintCode双指针/滑动窗口/Two Sum类型题总结

双指针题算是数组类型题目的一个子模块了。 373. Partition Array by Odd and Even 把一个数组划分为奇数在前偶数在后的状态,要求in place。很简单,就用双指针法,让两个指针从两头往中间扫描,当左边是偶数右边是奇数时就交换,直到左右指针相遇为止。 pub...

2016-08-10 19:33:41

阅读数:1607

评论数:0

LintCode贪心法题总结

贪心法的题目主要就考你会不会做,知道就知道,不知道那就很难知道。没啥套路,所以需要把这些题目过一遍。 82. Single Number 一个数组中,每个数字都出现了2次,只有一个数字出现了1次,要求找到那个数。可以用HashSet来记录,但是这样会消耗额外空间,以及HashSet的查找也额外花时...

2016-08-10 13:49:04

阅读数:576

评论数:0

LintCode数学题总结

LC上有一些标记为mathematics的题目,基本就是纯数学题或者数字题,也是需要掌握的。 517. Ugly Number 丑数,是一个正数,并且因子只包含2、3、5。此外,1也算丑数。0和负数都不算丑数。 public boolean isUgly(int num) { ...

2016-08-09 10:58:52

阅读数:1341

评论数:0

LintCode字符串题总结

LintCode上tag标记为String的题目大概有30多道题。 408. Add Binary 在我之前写的一篇LintCode位运算题总结的博文里有提到,此处便不再赘述。 133. Longest Words 给定一个string数组,要求找到这个数组里最长的单词是哪些。最简单的方法就是...

2016-08-05 12:00:31

阅读数:1741

评论数:0

LintCode二分查找题总结

LC上二分查找那一章有这么些题: 二分查找的题经常用于考,因为它虽然看似简单,但其实要完全正确却不容易,很容易写出死循环的程序。一个二分查找的程序可以很容易判断出一个人功底扎不扎实。 457. Classical Binary Search 这是一道非常经典的二分查找题,给出一个有序数...

2016-08-03 15:53:49

阅读数:3043

评论数:0

LintCode位运算题总结

LintCode上位运算&二进制的题目不多,加起来就10道题左右,把他们全部都AC一下,位运算这块就差不多了。面试的时候位运算也不是经常考察的点。因为这东西你知道就指导,不知道就不知道,没有啥深入探究讨论的余地。 1. A + B Problem 对两个32位的整数求和,这道题要是直接回答...

2016-08-02 13:16:59

阅读数:505

评论数:0

LintCode二叉树&递归分治题总结

LintCode中二叉树与分治法那章有这么些题目: 376. Binary Tree Path Sum

2016-07-26 23:53:30

阅读数:2541

评论数:2

LintCode图论&搜索题总结

LintCode上Graph & Search那一章有这些题目: 137. Clone Graph 给一个邻接表表示的图,返回一个它的深拷贝。这道题的关键在于用BFS首先克隆所有的点,然后再克隆所有的边。克隆点的时候需要用到HashSet来保存每一个节点。

2016-06-19 16:20:59

阅读数:1224

评论数:2

LintCode数据结构题总结

Lintcode数据结构有这么一些题目: 495. Implement Stack 用任意的数据结构实现一个栈,我是用List实现的,记得写的时候写成List array = new ArrayList(); 因为List只是Interface,而实现List接口的有多个类,其中一种就...

2016-06-10 22:46:07

阅读数:1819

评论数:0

LintCode数组题总结

做算法题的时候,几乎不可避免要跟数组打交道。在LintCode上数组那一章有这么一些题目: 1)547. Intersection of Two Arrays 比较简单。要求找到2个数组的交集,简单点的方法就是用2个hashSet,第一个HashSet存第一个数组的元素。然后扫描第二个...

2016-06-02 23:16:57

阅读数:2332

评论数:0

LintCode链表题总结

由于链表本身结构的单一性,链表的题目很少会有很大的变种,基本都是围绕几个基本的考点出题目。所以链表的题目比较好掌握,但是链表的题目又不太容易一次就AC通过,由于边界情况未考虑、空指针(比如head.next不存在但是却给head.next赋值了,就会抛出nullpointer的错误)、越界等边界情...

2016-06-01 14:08:25

阅读数:3259

评论数:0

分享自己收藏的几个iOS博客

1)iOS block 2)iOS扫一扫功能开发 3)iOS开发调试技巧总结 4)较全的iOS第三方库列表 5)iOS开发必备的库总结 6)iOS面试题集锦 7)iOS开发从入门到进阶的一些列博客 8)png图标网

2016-05-14 14:47:12

阅读数:300

评论数:0

浅谈几种iOS定时器

我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法。在这个时候,我们就需要用到定时器。在iOS中有很多方法完成以上的任务,到底有多少种方法呢?经过查阅资料,大概有三种方法:NSTimer、CADisplayLink、GCD。接下来我就一一介绍它们的用法。 一、NST...

2016-05-14 14:35:44

阅读数:372

评论数:0

浅谈UIAlertView与UIAlertController

苹果在iOS8.0后推出了UIAlertController以代替UIAlertView,导致的后果就是UIAlertView在iOS9.0之后被deprecated了,也就是iOS8.0之后只能用UIAlertController,iOS8.0之前只能用UIAlertView。所以如果想同时兼容...

2016-04-28 17:35:57

阅读数:4947

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭