每日一算
90ed9e4f
这个作者很懒,什么都没留下…
展开
-
【每日一算法】20180331-从排序数组中删除重复项
给定一个有序数组,你需要原地删除其中的重复内容,使每个元素只出现一次,并返回新的长度。不要另外定义一个数组,您必须通过用 O(1) 额外内存原地修改输入的数组来做到这一点。示例:给定数组: nums = [1,1,2],你的函数应该返回新长度 2, 并且原数组nums的前两个元素必须是1和2不需要理会新的数组长度后面的元素解答:class Solution { public int remo...原创 2018-04-01 00:42:25 · 387 阅读 · 0 评论 -
【每日一算法】20180402- 旋转数组
将包含 n 个元素的数组向右旋转 k 步。例如,如果 n = 7 , k = 3,给定数组 [1,2,3,4,5,6,7] ,向右旋转后的结果为 [5,6,7,1,2,3,4]。class Solution { public void rotate(int[] nums, int k) { int length = nums.length; w...原创 2018-04-01 17:57:14 · 208 阅读 · 0 评论 -
【每日一算法】20180401-买卖股票的最佳时机 II
假设有一个数组,它的第 i 个元素是一个给定的股票在第 i 天的价格。设计一个算法来找到最大的利润。你可以完成尽可能多的交易(多次买卖股票)。然而,你不能同时参与多个交易(你必须在再次购买前出售股票)。class Solution { public int maxProfit(int[] prices) { int i, d; int max = 0; ...原创 2018-04-01 15:51:07 · 266 阅读 · 0 评论 -
【每日一算法】20180403- 3Sums
Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must not contain dupli...原创 2018-04-03 17:01:48 · 322 阅读 · 0 评论