leetcode
皮皮go
无问西东
展开
-
剑指Offer:数组中重复的数字
题目描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。方法一:将元素存储在其下标对应的元素中。头到尾开始扫描,下标为i的元素m如果等于i就继续扫描。如果不等,再用m...原创 2019-12-12 12:37:00 · 148 阅读 · 0 评论 -
leetcode 11:盛最多水的容器
题目描述给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且n的值至少为 2。示例输入: [1,8,6,2,5,4,8,3,7]输出: 49...原创 2019-12-09 15:19:10 · 161 阅读 · 0 评论 -
未排序数组中累加和为给定值的最长子数组长度
题目描述给定一个无序数组arr, 其中元素可正、可负、可0。给定一个整数k,求arr所有子数组中累加和为k的最长子数组长度输入描述第一行两个整数N, k。N表示数组长度,k的定义已在题目描述中给出第二行N个整数表示数组内的数输出描述输出一个整数表示答案代码实现import java.util.*;public class Main{ p...原创 2019-12-08 11:14:51 · 252 阅读 · 0 评论 -
最大连续子数组之和
给一个数组,返回它的最大连续子序列的和。例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。原创 2019-09-09 15:35:10 · 542 阅读 · 0 评论 -
连续子数组乘积的最大值
题目描述输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。例如数组:arr[]={1, 2, 3, -2, 4, 3 } 最大子数组为 {4,3} 积为12。基本思路 方法1:暴力枚举 方法2:动态规划 代码实现package leetcode.dp;import j...原创 2019-08-29 17:10:17 · 765 阅读 · 0 评论 -
大数相加
题目描述实现整数加法,使其可以完成两个任意大的整数相加。如输入123456789987654321,987654321123456789,相加得到的结果为:1111111111111111110。思路分析显然,当我们输入的数足够大时,对于编程语言自带的加法运算已不能满足要求。本题需要自己去实现加法运算,而过程就是我们在草稿上进行加法运算的步骤:两个数的各个位置的对应数据相加,该进...原创 2019-09-12 15:29:47 · 228 阅读 · 0 评论 -
大数相乘
题目描述实现两个任意大的整数相乘,如输入123456789,123456789,输出15241578750190521思路分析跟大数相加一个道理,也是利用最基本的乘法法则,将其中一个数的个位、十位、百位......分别与另一个数的个位、十位、百位...相乘,然后将结果相加。代码实现package leetcode.number;import java.util.S...原创 2019-09-12 15:41:15 · 267 阅读 · 0 评论 -
并查集
题目描述某社交APP有很多用户,其中有些人会互相关注。互相关注的用户我们认为是朋友,朋友具有传递性。如果已知A是B的朋友,B是C的朋友,那么A也是C的朋友。朋友之间组成朋友圈。给定一个N*N的矩阵M,表示小红书的互相关注关系。M[i][j]=1表示第i个用户和第j个用户相互关注,M[i][j]=0表示单向关注或无关注。请输出所有用户中朋友圈的数量。输入:第一行为N,表示用户总...原创 2019-09-15 16:25:18 · 127 阅读 · 0 评论 -
数字的全排列
题目描述给定数字n,输出1~n的全排列。输入测试样例:3输出测试样例1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 基本思路其实从自然语言描述的角度,这个题很好理解。对于给定数字n,那么它的全排列必然是由n个数字组成。我们可以先固定第一个位置,此时有n个数字可供选择,然后固定第2个位置,此时有n-1个数字可供选择,......原创 2019-09-15 18:54:03 · 696 阅读 · 0 评论