>

自由软件精神——“自由、开放、分享”。自由软件自诞生之日起,就秉承了学术自由的思想,信奉科学无国界,知识应该全人类共享。

ubuntu精神——人道待人,天下共享连接人人的信念。具有 ubuntu 精神的人心胸开阔,乐于助人,见贤思齐而不忌妒贤能......

文章来源 2014.11, 页 1

好吧,给你自信的题目!

atoi

再写了一下,注意key point是if ans is less than (MAX-bit)/10: ans=ans*10+bit 就是先判后做,不吃后悔药的写法!

标签:

leetcode刷题 Distinct Subsequences

没有怎么懂DP的思路!下次再回头看下。

标签:

leetcode刷题 Copy List with Random Pointer

那种用链表复制然后分离的思路我就没有使用了,直接用hash映射搞定,注意random指向null的处理!还有链表复制要学会使用一个冗余head来进行操作非常方便!使用《剑指offer》里的思路也不错!

标签:

leetcode刷题 Sell Stock III

还是DP,不过是针对特定点i,看它过去收益的最大值和未来收益的最大值,用2个dp数组搞定计算截止i为止的历史最大收益,以及从i开始的未来最大收益!

leetcode刷题 Scramble String

三维DP,面试真是遇到就死翘翘!用递归可以解决一小部分测试case!

标签:

leetcode刷题 Word Break

DP再做了一次,了然!注意dp初始化条件!

标签:

leetcode刷题 Word Break II

优化代码要求太高了!

标签:

leetcode刷题 Median of Two Sorted Arrays

用k/2在A和B中分别找。比如k = 6, 分别看A和B中的第3个数, 已知 A1 < A2 < A3 < A4 < A5... 和 B1 < B2 < B3 < B4 < B5..., 如果A3 <= B3, 那么第6小的数肯定不会是A1, A2, A3。那就可以排除掉A1, A2, A3, 转成求A4, A5, ... B1, B2, B3, ...这些数中第3小的数的问题, k就被减半了。每次都假设A的元素个数少, pa = min(k/2, lenA)的结果可能导致k == 1或A空, 这两种情况都是终止条件。

标签:

leetcode刷题 Merge k Sorted Lists

可以用归并,但是py下超时了,还可以用大小为k的堆来完成!

标签:

leetcode刷题 Recover Binary Search Tree

多用OOP来写代码!中间的状态使用类成员,还有记得命名要规范!

标签:

leetcode刷题 Word Ladder II

其实就是BFS!

标签:

leetcode刷题 Longest Consecutive Sequence

就考个hash找数字问题!

leetcode刷题 Edit Distance

直接DP过!注意DP的维度是m+1 * n+1,且记得初始化首行和首列!

标签:

leetcode刷题 Longest Valid Parentheses

其实就是stack(存放左括号以及该括号的下标)+DP!

标签:

leetcode刷题 Insert Interval

训练下标能力,我这方面很弱,看着这样的问题不想做啊!

标签:

leetcode刷题 Merge Intervals

这题目过得真顺,先排序,然后按照求解排序数组中重复数字次数那样搞定!

标签:

leetcode刷题 Sudoku Solver

就是递归回溯问题,NP问题,先将为的“.”的board[i][j]=0~9,然后看是否有效,如果无效,则将原来的board[i][j]还原为".",就是回溯了!记得判定sudoku的方法,就是暴力方法,没啥技巧。

标签:

leetcode刷题 N-Queens II

比第一个简单!去掉一些函数即可!

标签:

leetcode刷题 N-Queens

如果面试遇到了的话我再也不怕了,其实本质就是抽象一个一维的positions,然后递归找index+1和index的关系,满足条件的就是结果了!

标签:

1 2 3 4 5 » 返回顶部