算法
珍妮玛•黛金
人生就是如此,穿的是朝九晚五的责任,提的是柴米油盐的生活,跳的骨子里的放荡不羁和曾经为此付之希望的梦想叫醒我的不是梦想,是生活,看世人慌慌张张,不过图碎银几两。偏偏这碎银几两,能解世间万种惆怅。
展开
-
跟LintCode的算法题杠上了(1334旋转数组)
题目给定一个数组,将数组向右移动k步,其中k为非负数。输入: [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转1步: [7,1,2,3,4,5,6]向右旋转2步: [6,7,1,2,3,4,5]向右旋转3步: [5,6,7,1,2,3,4]输入: [-1,-100,3,99], k = 2输出: [3,99,-1,-100]解释:向右旋转1步: [99,-1,-100,3]向右旋转2步: [3,99,-1,-100]挑战给出尽可能多原创 2021-08-08 13:57:45 · 114 阅读 · 1 评论 -
跟LintCode的算法题杠上了(1451到最近的人的最大距离)
题目在一排座位( seats)中,1 代表有人坐在座位上,0 代表座位上是空的。至少有一个空座位,且至少有一人坐在座位上。亚历克斯希望坐在一个能够使他与离他最近的人之间的距离达到最大化的座位上。返回他到离他最近的人的最大距离。1 <= seats.length <= 20000seats 中只含有 0 和 1,至少有一个 0,且至少有一个 1。样例 1:输入:[1,0,0,0,1,0,1]输出:2解释:如果亚历克斯坐在第二个空位(seats[2])上,他到离他最近的人的距离原创 2021-08-08 10:45:53 · 173 阅读 · 0 评论 -
跟LintCode的算法题杠上了(1728卡牌分组)
题目给定一副牌,每张牌上都写着一个整数。此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:每组都有 X 张牌。组内所有的牌上都写着相同的整数。仅当你可选的 X >= 2 时返回 true。1 <= deck.length <= 100000 <= deck[i] < 10000示例1输入: [1,2,3,4,4,3,2,1]输出: true解释: 可行的分组 [1,1],[2,2],[3,3],[4,4]输入: [1,1,1原创 2021-08-07 23:04:36 · 178 阅读 · 0 评论 -
跟LintCode的算法题杠上了(2424输出杨辉三角)
题目你的代码需要从标准输入流(控制台)中读入一个正整数 n,然后计算出前 n 行的杨辉三角并将结果打印到标准输出流(控制台)中。样例评测机会将整个项目的代码编译为一个可执行的 Main 程序,并按照这样的方式执行你的代码 Main。你的代码需要从标准输入流(控制台)中读入数据 n,并将前 n 行的杨辉三角打印到标准输出流(控制台)中。输出格式见样例。样例一 * 你的代码需要从标准输入流(控制台)中读入一个正整数 n, * 然后计算出前 n 行的杨辉三角并将结果打印到标准输出流(控制台)中。 *原创 2021-08-04 20:43:11 · 281 阅读 · 0 评论 -
跟LintCode的算法题杠上了(1483最高平均分)
题目给出一组学生的名字以及他们的成绩,求最高的平均分(一位学生可能有多门课成绩)样例例 1:输入:names = [“bob”,“ted”,“ted”]grades=[88,100,20]输出:88,解释:因为ted这个人的平均分=(100+20)/ 2 = 60,而bob 这个人就一门课程是88分例 2:输入: names = [“john”,“xisa”,“xisa”,“liajd”,“alice”,“john”,“xisa”,“mark”,“ted”,“xlisa”]grades原创 2021-03-12 20:28:30 · 183 阅读 · 0 评论 -
跟LintCode的算法题杠上了(1334旋转数组)
题目给定一个数组,将数组向右移动k步,其中k为非负数。样例样例 1:输入: [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转1步: [7,1,2,3,4,5,6]向右旋转2步: [6,7,1,2,3,4,5]向右旋转3步: [5,6,7,1,2,3,4]样例 2:输入: [-1,-100,3,99], k = 2输出: [3,99,-1,-100]解释:向右旋转1步: [99,-1,-100,3]向右旋转2步: [3,99,-1,原创 2021-03-11 19:54:51 · 175 阅读 · 0 评论 -
跟LintCode的算法题杠上了(1814所有子数组之和)
题目给定一个数组nums, 你需要返回这个数组所有子数组之和。样例示例1:输入: nums = [1, 2, 3]输出: 20解释: {1} + {2} + {3} + {2 + 3} + {1 + 2} + {1 + 2 + 3} = 20示例2输入: [1, 2]输出: 6解释: {1} + {2} + {1, 2} = 6注意事项如果nums = [2, 4, 1], 数组所有的子集是 {[2], [4], [1], [2, 4], [4, 1], [2, 4, 1]}保证返原创 2021-03-09 08:51:18 · 230 阅读 · 0 评论 -
Java面试题(二十一)面试经验分享
1.自我介绍2.聊聊最近的项目3.7层网络协议应用层:为应用服务提供网络服务,http,snmp,ftp表现层:将下层收到的数据进行处理成网络标准的数据格式会话层:管理连接,就是何时创建连接,何时关闭连接传输层:保障数据传输的可靠稳定,tcp,udp网络层:通过路由,产生IP地址,来实现数据包的发送数据链路层:把不规范的比特流通过封装成数据帧的方式传给上层物理层:连接底层物理设备的传输介质,通过比特流的方式进行数据传输4.数据库索引有哪些主键索引:给一个键设置为主键的时候自动创建原创 2021-03-08 22:55:59 · 340 阅读 · 1 评论 -
Java面试题(十七)美团算法题
三色旗数组元素移动给定int 类型数组 [5, 0, -2, 1, 0, 2, 0, -1, 0, 0, 4]将数据分为3类,移动元素后,元素顺序为 正数、负数、零要求只能进行数组内移动,空间复杂度 O(1)解题思路遍历数组,当元素等于0时,就和数组末尾元素交换位置,如果末尾也是0,就往末尾前一位进行交换当元素小于0时,就跳过本次,位移+1进入下次循环当元素大于0时,如果上一位元素小于0,就和上一位元素交换,否则就跳过本次循环,位移+1进入下次循环 public static i原创 2021-02-22 20:41:00 · 630 阅读 · 0 评论 -
跟LintCode的算法题杠上了(8旋转字符串)
前言今天闲来无事准备刷个算法题,缓解一下办公室尴尬的气氛,放松一下,谁知我竟然跟这题杠上了,我必须得好好研究一下,哈哈题目点击进入lintcode,第8旋转字符串给定一个字符串(以字符数组的形式给出)和一个偏移量,根据偏移量原地旋转字符串(从左向右旋转)。举例:输入: str=“abcdefg”, offset = 3输出: str = “efgabcd” 样例解释: 注意是原地旋转,即str旋转后为"efgabcd"输入: str=“abcdefg”, offset = 10输出原创 2020-11-12 16:39:04 · 409 阅读 · 0 评论 -
跟LintCode的算法题杠上了(82落单的数)
前言今天闲来无事准备刷个算法题,缓解一下办公室尴尬的气氛,放松一下,谁知我竟然跟这题杠上了,我必须得好好研究一下,哈哈题目点击进入lintcode,第82题落单的数给出 2 * n + 1个数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字。举例:输入:[1,1,2,2,3,4,4]输出:3解释:仅3出现一次,简单点理解就是找出数组中的唯一数解题思路先说这题没什么难度,可以利用set的不重复原理,当add 重复的时候会返回false方法一本机测试最后其实这只是一道简单原创 2020-11-11 16:41:45 · 378 阅读 · 2 评论 -
跟LintCode的算法题杠上了(1905字符删除)
前言今天闲来无事准备刷个算法题,缓解一下办公室尴尬的气氛,放松一下,谁知我竟然跟这题杠上了,我必须得好好研究一下,哈哈题目点击进入lintcode,第1905题字符删除输入两个字符串,从第一字符串中删除第二个字符串中所有的字符举例:输入: str=”They are students”,sub=”aeiou”输出:”Thy r stdnts”注意事项:str和sub的长度>=1,<=10的5次方解题思路先说这题没什么难度,无非就是2个循环遍历,如果2个元素不相等,就添加到新的原创 2020-11-06 10:01:51 · 43608 阅读 · 1 评论