![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
斩杀Lintcode
plugcy
精通数据库
展开
-
Lintcode——Implement strStr()
题目描述:对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(从0开始)。如果不存在,则返回 -1。思路:1. 简单匹配算法: 简单匹配算法,一个i 指针指向源串,一个j 指针指向目标串,如果相等,均往后挪一位,一旦不匹配了,j从0开始,同时i 需要回退到开始匹配时所指向的下一位,不清楚的是,为什么当目标串为...原创 2018-05-31 09:41:43 · 378 阅读 · 0 评论 -
LintCode——包含min函数的栈
题目描述:实现一个带有取最小值min方法的栈,min方法将返回当前栈中的最小值。你实现的栈将支持push,pop 和 min 操作,所有操作要求都在O(1)时间内完成。思路:添加辅助栈往工作栈里压入数据,若数据小于原有栈中的数,则往辅助栈中压入该数据,否则往辅助栈里压入一个之前判断为最小的数据弹出数据时,工作栈和辅助栈同时弹出一个数获取最小值就是获取辅助栈栈顶元素Stack<Integer&...原创 2018-05-31 11:26:42 · 385 阅读 · 0 评论 -
Lintcode——寻找峰值
题目描述:你给出一个整数数组(size为n),其具有以下特点:相邻位置的数字是不同的A[0] < A[1] 并且 A[n - 2] > A[n - 1]假定P是峰值的位置则满足A[P] > A[P-1]且A[P] > A[P+1],返回数组中任意一个峰值的位置。解题思路:首先能确定头部第二个元素大于第一个元素,并且尾部倒数第二个元素大于最后一个元素采用二分查找的思路,如果m...原创 2018-07-02 23:01:18 · 291 阅读 · 0 评论