算法
狼王神起
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
大整数相乘
有两个用字符串表示的非常大的大整数,算出他们的乘积,也是用字符串表示。不能用系统自带的大整数类型。输入描述:空格分隔的两个字符串,代表输入的两个大整数 输出描述:输入的乘积,用字符串表示 输入例子1:72106547548473106236 982161082972751393 输出例子1:708202448296345380408486564...原创 2018-08-04 11:14:36 · 250 阅读 · 0 评论 -
数组中的子数组之和问题
560. Subarray Sum Equals K 思路:可以这样考虑,对于求a[i] - a[j]的连续和,可以转化为a[0]-a[j]和a[0]-a[i]的问题,而后者可以在一次遍历时完成,用hashmap存出现相同得数的次数。class Solution { public int subarraySum(int[] nums, int k) { int...原创 2018-09-01 10:15:20 · 306 阅读 · 0 评论 -
221. Maximal Square
Given a 2D binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its area. 思路:如果当前正在考虑的结点为n+1边长的正方形的右下角顶点,那么这个结点的左上三个点必定为长为n的正方形右下角顶点。 class Solution...原创 2018-08-16 13:35:16 · 221 阅读 · 0 评论 -
85. Maximal Rectangle
Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing only 1's and return its area. 思路:见图当考虑到图中红色圈起来的数时,依次往上遍历,每次考虑能构成的矩形,图为: 所以第一次遍历标记下从左到右的连续1的个数...原创 2018-08-16 13:26:22 · 335 阅读 · 0 评论 -
Best Time to Buy and Sell Stock
1.只能买入卖出一次。 思路:卖出时,在前面最低价的时候买入,可以用一个变量记录最低价。class Solution { public int maxProfit(int[] prices) { if(prices == null||prices.length == 0) return 0; int res = 0; int m...原创 2018-08-02 10:54:34 · 203 阅读 · 0 评论 -
爱奇艺秋招 红和绿
牛牛有一些排成一行的正方形。每个正方形已经被染成红色或者绿色。牛牛现在可以选择任意一个正方形然后用这两种颜色的任意一种进行染色,这个正方形的颜色将会被覆盖。牛牛的目标是在完成染色之后,每个红色R都比每个绿色G距离最左侧近。牛牛想知道他最少需要涂染几个正方形。如样例所示: s = RGRGR我们涂染之后变成RRRGG满足要求了,涂染的个数为2,没有比这个更好的涂染方案。 思路:当s的si...原创 2018-08-01 11:16:31 · 435 阅读 · 0 评论 -
括号匹配
(1)一个合法的括号匹配序列有以下定义:1、空串""是一个合法的括号匹配序列2、如果"X"和"Y"都是合法的括号匹配序列,"XY"也是一个合法的括号匹配序列3、如果"X"是一个合法的括号匹配序列,那么"(X)"也是一个合法的括号匹配序列4、每个合法的括号序列都可以由以上规则生成。例如: "","()","()()",&q原创 2018-08-01 11:11:19 · 979 阅读 · 0 评论 -
爱奇艺 字符串价值
有一种有趣的字符串价值计算方式:统计字符串中每种字符出现的次数,然后求所有字符次数的平方和作为字符串的价值例如: 字符串"abacaba",里面包括4个'a',2个'b',1个'c',于是这个字符串的价值为4 * 4 + 2 * 2 + 1 * 1 = 21牛牛有一个字符串s,并且允许你从s中移除最多k个字符,你的目标是让得到的字符串的价值最小。输入描述:输入包括两行,第一行一个字符...原创 2018-08-09 21:35:07 · 1055 阅读 · 0 评论 -
未排序数组的O(n)问题
输入一组未排序的整数,找出其中最长的连续数字的长度。例如输入为[3,1,2,5,7,4,8,9] ,其中连续的数据为1,2,3,4,5,长度为5 。要求算法时间复杂度为O(n).思路:存到hashset里面,然后依次遍历,如果当前数为连续数字的起始数字(即num-1不属于set),那么就开始往后看import java.util.*;public class Main{ pub...原创 2018-08-09 15:03:58 · 554 阅读 · 0 评论 -
单调栈
单调栈的想法是对连续递增或者是递减数据存储,遇到相反顺序的就进行操作。84. Largest Rectangle in HistogramGiven n non-negative integers representing the histogram's bar height where the width of each bar is 1, find the area of larges...原创 2018-08-04 22:13:03 · 147 阅读 · 0 评论 -
字典树
今日头条 异或题目描述给定整数m以及n各数字A1,A2,..An,将数列A中所有元素两两异或,共能得到n(n-1)/2个结果,请求出这些结果中大于m的有多少个。输入描述:第一行包含两个整数n,m. 第二行给出n个整数A1,A2,...,An。数据范围对于30%的数据,1 <= n, m <= 1000对于100%的数据,1 <= n, m, A...原创 2018-09-01 17:54:57 · 242 阅读 · 0 评论
分享