Container With Most Water(LintCode)】的更多相关文章

Container With Most Water Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together wi…
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis forms a containe…
描述: 实现1 -- 求所有可能的值,O(N^2),超时了(因为超时没有跑所有的测试用例,所以不确定还有没有其他问题) 代码: def maxArea(self, height): tmp = len(height) if tmp == 0 or tmp == 1: return 0 if tmp == 2: return abs(height[1] - height[0]) minus_lst = [height[i] - height[i-1] for i in range(1, len(h…
题目难度:Medium Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis form…
引子 在此前的一篇文章中,我介绍了如何在本地docker环境中运行ASP.NET Core跨平台应用程序(http://www.cnblogs.com/chenxizhang/p/7148657.html),看起来非常不错,不是吗?那么,如果我们希望真正在实际的生产环境去部署和运行这个应用程序,应该怎么做呢? 通常来说,有两种方案可以选择 1. 在目标运行环境(可以是本地的服务器,也可以是云端)申请虚拟机,然后启用docker运行这些应用程序,所有的细节都可以(也必须)由你自己控制. 2. 使用…
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis forms a containe…
Level:   Medium 题目描述: Given n non-negative integers a1, a2, ..., an , where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with…
题目链接 https://leetcode.com/problems/container-with-most-water/?tab=Description   Problem: 已知n条垂直于x轴的线段,选择其中两条,使得该线段和x轴能够存储最大量的水.   1.首先如何计算存储水量 横坐标之差乘以最低高度 2.遍历所有情况则需要n*(n-1)/2,时间复杂度为o(n^2) 3.根据木桶原理,容水量由最短木板决定,因此在遍历时,按照最短木板原理进行对i,j线段的选择   参考代码: packag…
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis forms a containe…
Implement Trie Implement a trie with insert, search, and startsWith methods. 样例   注意 You may assume that all inputs are consist of lowercase letters a-z. 百度了一下,了解了字典树是啥,然后看了下实现的代码,然后自己写还是不难的(是啊,知道答案当然不会觉得难). 字典树 又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种.典型应用是用…
木材加工 有一些原木,现在想把这些木头切割成一些长度相同的小段木头,需要得到的小段的数目至少为 k.当然,我们希望得到的小段越长越好,你需要计算能够得到的小段木头的最大长度. 样例 有3根木头[232, 124, 456], k=7, 最大长度为114. 注意 木头长度的单位是厘米.原木的长度都是正整数,我们要求切割得到的小段木头的长度也要求是整数.无法切出要求至少 k 段的,则返回 0 即可. 挑战 O(n log Len), Len为 n 段原木中最大的长度 要达到n*log Len ,可以…
Continuous Subarray Sum II   Given an circular integer array (the next element of the last element is the first element), find a continuous subarray in it, where the sum of numbers is the biggest. Your code should return the index of the first number…
判断数独是否合法 请判定一个数独是否有效. 该数独可能只填充了部分数字,其中缺少的数字用. 表示. 样例 下列就是一个合法数独的样例. 注意 一个合法的数独(仅部分填充)并不一定是可解的.我们仅需使填充的空格有效即可. 说明 什么是 数独? http://sudoku.com.au/TheRules.aspx http://baike.baidu.com/subview/961/10842669.htm 一开始认为会超时于是有了用空间换时间的想法于是出现如下代码.. 后来一想,肯定不会超时啊..…
二进制求和 给定两个二进制字符串,返回他们的和(用二进制表示). 样例 a = 11 b = 1 返回 100 细节出了好多问题,提交了好多次... public class Solution { /** * @param a a number * @param b a number * @return the result */ public String addBinary(String a, String b) { int c = 0; int al = a.length() - 1; i…
1.环境介绍 使用本机系统:macX minikube镜像:安装的阿里云提供的镜像(否则总是提示访问google的api,不FQ无法成功) 虚拟机情况:使用Virtual box 的虚拟机环境 minikube start 启动正常,其他的容器(nginx部署成功,mysql 部署成功) 2.实验内容 使用yaml文件部署ubuntu:16.04镜像 yaml文件内容: apiVersion: v1 #定义Pod kind: Pod metadata: #Pod的名称,全局唯一 name: ub…
题目描述 有一块矩形土地被划分成$n\times m$个正方形小块.这些小块高低不平,每一小块都有自己的高度.水流可以由任意一块地流向周围四个方向的四块地中,但是不能直接流入对角相连的小块中.一场大雨后,由于地势高低不同,许多地方都积存了不少降水.给定每个小块的高度,求每个小块的积水高度.注意:假设矩形地外围无限大且高度为$0$. 输入格式 第一行包含两个非负整数$n,m$.接下来$n$行每行$m$个整数表示第$i$行第$j$列的小块的高度. 输出格式 输出$n$行,每行$m$个由空格隔开的非负…
go语言中的container有heap.list.ring,没有stack. 其中heap是优先级队列,虽然有Push()/Pop()接口,但是使用heap要实现heap.Interface接口,不够简洁. 所以这里用list封装了一个简单的stack,留作他用. package stack import "container/list" type Stack struct { list *list.List } func NewStack() *Stack { list := li…
1. 进入容器内部后 cat /etc/hosts 会显示自己以及(– link)软连接的容器IP 2.使用命令 docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container-ID> 或 docker inspect <container id> 或 docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' c…
这题不太好想.可以先扫描找到最高的柱子,然后分别处理两边:记录下当前的局部最高点,如果当前点小于局部最高点,加上, 反则,替换当前点为局部最高点. int trapWater(int A[], int n) { ; ; ; ; i < n; i++) { if (A[i]>A[max])max = i; } ; i < max; i++) { if (A[i]>peak) peak = A[i]; else water += peak - A[i]; } ; j > max;…
水流(water) 时间限制: 1 Sec  内存限制: 64 MB提交: 9  解决: 2[提交][状态][讨论版] 题目描述 全球气候变暖,小镇A面临水灾,于是你必须买一些泵把水抽走.泵的抽水能力可以认为是无穷大,但你必须把泵放在合适的位置,从而能使所有的水能流到泵里. 小镇可以认为是N×M的矩阵,矩阵里的每个单元格都是一个a-z小写字母,该小写字母表示该格子的高度,字母大的表示该单元格比较高,反之表示该格子高度 比较低.当前单元格的水可以流到上.下.左.右四个格子,但必须满足这些格子的高度…
准备 Person实例 @Data public class Person { private String name; private int age; } xml bean配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.…
丑数 设计一个算法,找出只含素因子3,5,7 的第 k大的数. 符合条件的数如:3,5,7,9,15...... 您在真实的面试中是否遇到过这个题? Yes 样例 如果k=4, 返回 9 挑战 要求时间复杂度为O(nlogn)或者O(n) import java.util.Queue; import java.util.LinkedList; class Solution { /** * @param k: The number k. * @return: The kth prime numbe…
Word Ladder Given two words (start and end), and a dictionary, find the length of shortest transformation sequence from start to end, such that: Only one letter can be changed at a time Each intermediate word must exist in the dictionary Example Give…
Single Number II Given 3*n + 1 numbers, every numbers occurs triple times except one, find it. Example Given [1,1,2,3,3,3,2,2,4,1] return 4 Challenge One-pass, constant extra space. 统计每一位上的1出现的次数,然后模3 , 题目上的3 * n + 1给了提示,然后又做过一题2 * n + 1的位操作. public…
颜色分类 给定一个包含红,白,蓝且长度为n的数组,将数组元素进行分类使相同颜色的元素相邻,并按照红.白.蓝的顺序进行排序. 我们可以使用整数0,1和2分别代表红,白,蓝. 样例   注意 不能使用代码库中的排序函数来解决这个问题 说明 一个相当直接的解决方案是使用计数排序扫描2遍的算法. 首先,迭代数组计算0,1,2出现的次数,然后依次用0,1,2出现的次数去覆盖数组. 你否能想出一个仅使用常数级额外空间复杂度且只扫描遍历一遍数组的算法? 代码写的乱糟糟的,难得写了注释. 想法就是把0交换至左边…
验证二叉查找树 给定一个二叉树,判断它是否是合法的二叉查找树(BST) 一棵BST定义为: 节点的左子树中的值要严格小于该节点的值. 节点的右子树中的值要严格大于该节点的值. 左右子树也必须是二叉查找树. 样例 一个例子: 2 / \ 1 4 / \ 3 5 上述这棵二叉树序列化为 {2,1,4,#,#,3,5}. 中序遍历得到中序遍历序列,验证是否递增即可. /** * Definition of TreeNode: * public class TreeNode { * public int…
Valid Palindrome Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.   Example "A man, a plan, a canal: Panama" is a palindrome. "race a car" is not a palindrome. Note Have you…
最大子数组 给定一个整数数组,找到一个具有最大和的子数组,返回其最大和. 样例 给出数组[−2,2,−3,4,−1,2,1,−5,3],符合要求的子数组为[4,−1,2,1],其最大和为6 注意 子数组最少包含一个数 挑战 要求时间复杂度为O(n) 若当前和小于0,那么加到下一个数上必然会使和减小,此时抛弃这个和重新求和.当遇到一个负数时,记录下当前已知的最大和. 总耗时: 2721 ms public class Solution { /** * @param nums: A list of…
子树 有两个不同大小的二进制树: T1 有上百万的节点:T2 有好几百的节点.请设计一种算法,判定 T2 是否为 T1的子树. 样例 下面的例子中 T2 是 T1 的子树: 1 3 / \ / T1 = 2 3 T2 = 4 / 4 下面的例子中 T2 不是 T1 的子树: 1 3 / \ \ T1 = 2 3 T2 = 4 / 4 注意 若 T1 中存在从节点 n 开始的子树与 T2 相同,我们称 T2 是 T1 的子树.也就是说,如果在 T1 节点 n 处将树砍断,砍断的部分将与 T2 完全…
合并区间 给出若干闭合区间,合并所有重叠的部分. 样例 给出的区间列表 => 合并后的区间列表: [ [ [1, 3], [1, 6], [2, 6], => [8, 10], [8, 10], [15, 18] [15, 18] ] ] 挑战 O(n log n) 的时间和 O(1) 的额外空间. 思路是清晰的,代码是混乱的.先用Collection.sort()方法对List排序.当然也可以先toArray()然后用Arrays.sort()排序.但是都需要写一个实现Comparator接…