会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
onlyandonly
博客园
首页
新随笔
联系
管理
订阅
上一页
1
2
3
4
5
下一页
2018年7月26日
Longest Increasing Subsequence
摘要: 给定一个无序的整数数组,找到其中最长上升子序列的长度。 示例: 说明: 可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。 你算法的时间复杂度应该为 O(n2) 。 进阶: 你能将算法的时间复杂度降低到 O(n log n) 吗? 首先是O(n^2)的算法,就是用一个数组a来存储到某个位
阅读全文
posted @ 2018-07-26 13:08 onlyandonly
阅读(128)
评论(0)
推荐(0)
2018年7月22日
零钱兑换
摘要: 给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 示例 1: 示例 2: 说明:你可以认为每种硬币的数量是无限的。 看到动态规划的题目真是头疼,思路还没打开。。。 这个排第一的算法,很
阅读全文
posted @ 2018-07-22 17:31 onlyandonly
阅读(974)
评论(2)
推荐(0)
不同路径
摘要: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 例如,上图是一个7 x 3 的网格。有多少可能的路径? 说明:m 和 n 的值均不
阅读全文
posted @ 2018-07-22 15:49 onlyandonly
阅读(163)
评论(0)
推荐(0)
跳跃游戏
摘要: 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 示例 2: 一条动态规划下的题。然而我压根不知道动态规划是啥。。。一开始用的递归死算,TLE了,后来用了一个数组b来标记能否到达某个位置,通过了,也看
阅读全文
posted @ 2018-07-22 14:34 onlyandonly
阅读(136)
评论(0)
推荐(0)
2018年7月21日
搜索二维矩阵 II
摘要: 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例: 现有矩阵 matrix 如下: 给定 target = 5,返回 true。 给定 target = 20,返回 fals
阅读全文
posted @ 2018-07-21 20:30 onlyandonly
阅读(175)
评论(0)
推荐(0)
搜索旋转排序数组
摘要: 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设数组中不存在重复的元素。 你的算法时间复杂度必须是 O
阅读全文
posted @ 2018-07-21 20:18 onlyandonly
阅读(205)
评论(0)
推荐(0)
合并数组
摘要: 给出一个区间的集合,请合并所有重叠的区间。 示例 1: 示例 2: 将数组按照start进行排序,先把第一个区间扔进返回数组,然后遍历剩下的区间,如果该区间和返回数组尾部的区间重叠,就把它们合并,不然就把该区间扔进返回数组。
阅读全文
posted @ 2018-07-21 19:04 onlyandonly
阅读(140)
评论(0)
推荐(0)
在排序数组中查找元素的第一个和最后一个位置
摘要: 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 示例 1: 示例 2: 二分查找的升级版。以searchBegin为例,当nums
阅读全文
posted @ 2018-07-21 13:23 onlyandonly
阅读(468)
评论(0)
推荐(0)
2018年7月19日
寻找峰值
摘要: 看到logN就想到二分查找,起初我是想判断 mid-1,mid,mid+1的,但这样太麻烦,而且容易出错。。。 其实只用判断mid 和mid+1即可。如果mid<mid+1 说明峰值肯定在[mid+1,r]里面,如果mid>mid+1,则峰值肯定在[l,mid]里面。
阅读全文
posted @ 2018-07-19 09:59 onlyandonly
阅读(124)
评论(0)
推荐(0)
2018年7月18日
数组中的第K个最大元素
摘要: 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 1: 示例 2: 说明: 你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。 直接快排就过了。。。。用堆排序的话应该会更快
阅读全文
posted @ 2018-07-18 21:12 onlyandonly
阅读(153)
评论(0)
推荐(0)
上一页
1
2
3
4
5
下一页
公告