- 博客(131)
- 收藏
- 关注
原创 性能测试-难题解决分享
难题解决分享难题1:构造测试数据时,数据库批量插入数据,解决表字段唯一性解决:利用时间戳unix_timestamp(now()) 或 uuid() 或 substring(uuid_short(),9) 生成指定位数的随机数难题2:编写脚本时,其他场景可能需要获取登录后响应结果Token解决:a.正则表达式提取器-获取token 正则表达式:access_token":"(.+?)",b.设置Token为全局变量 ${__setProperty(newtoken...
2020-12-28 17:11:37 239
原创 算法编程--最长回文字串
对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度。给定字符串A以及它的长度n,请返回最长回文子串的长度。测试样例:"abc1234321ab",12返回:7‘import java.util.*;//从中间public class Palindrome { public int getLon
2017-08-28 09:27:44 271
原创 算法编程--文本嗅探
现在有一个字符串列表,和一个关键词列表,请设计一个高效算法,检测出含关键字列表中关键字(一个或多个)的字符串。给定字符串数组A及它的大小n以及关键词数组key及它的大小m,请返回一个排好序的含关键词的字符串序号的列表。保证所有字符串长度小于等于100,关键词个数小于等于100,字符串个数小于等于200。保证所有字符串全部由小写英文字符组成。若不存在含关键字的字符串,请返回一个只含-1的数组
2017-08-28 09:03:22 1398
原创 lintcode -- 最大数
给出一组非负整数,重新排列他们的顺序把他们组成一个最大的整数。 注意事项最后的结果可能很大,所以我们返回一个字符串来代替这个整数。您在真实的面试中是否遇到过这个题? Yes样例给出[1, 20, 23, 4, 8],返回组合最大的整数应为8423201。/*本题很容易想到先排序数组再
2017-08-19 10:16:26 367 1
原创 lintcode -- 图中两个点之间的路线
给出一张有向图,设计一个算法判断两个点 s 与 t 之间是否存在路线。您在真实的面试中是否遇到过这个题? Yes样例如下图:A----->B----->C \ | \ | \ | \ v ->D----->Efor s = B and t = E, return truefor s
2017-08-19 09:19:04 354
原创 lintcode--字符串置换
给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换。置换的意思是,通过改变顺序可以使得两个字符串相等。您在真实的面试中是否遇到过这个题? Yes样例"abc" 为 "cba" 的置换。"aabc" 不是 "abcc" 的置换。public class Solution { publ
2017-08-18 10:04:06 288
原创 lintcode --单词搜索
给出一个二维的字母板和一个单词,寻找字母板网格中是否存在这个单词。单词可以由按顺序的相邻单元的字母组成,其中相邻单元指的是水平或者垂直方向相邻。每个单元中的字母最多只能使用一次。您在真实的面试中是否遇到过这个题? Yes样例给出board =[ "ABCE", "SFCS", "ADEE"]word = "ABC
2017-08-18 09:34:23 844
原创 lintcode--二叉树的中序遍历
给出一棵二叉树,返回其中序遍历您在真实的面试中是否遇到过这个题? Yes样例给出二叉树 {1,#,2,3}, 1 \ 2 / 3返回 [1,3,2]./** * Definition of TreeNode: * public class TreeNode { *
2017-08-17 11:08:29 200
原创 lintcode--二叉树的前序遍历
给出一棵二叉树,返回其节点值的前序遍历。您在真实的面试中是否遇到过这个题? Yes样例给出一棵二叉树 {1,#,2,3}, 1 \ 2 / 3 返回 [1,2,3]./** * Definition of TreeNode: * public class TreeNode {
2017-08-17 10:57:39 269 1
原创 lintcode--全排列
给定一个数字列表,返回其所有可能的排列。 注意事项你可以假设没有重复数字。您在真实的面试中是否遇到过这个题? Yes样例给出一个列表[1,2,3],其全排列为:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]//
2017-08-17 10:28:08 247
原创 lintcode--平衡二叉树
给定一个二叉树,确定它是高度平衡的。对于这个问题,一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1。 您在真实的面试中是否遇到过这个题? Yes样例给出二叉树 A={3,9,20,#,#,15,7}, B={3,#,20,15,7}A) 3 B) 3 / \
2017-08-17 10:14:18 224
原创 lintcode -- 房屋染色
这里有n个房子在一列直线上,现在我们需要给房屋染色,分别有红色蓝色和绿色。每个房屋染不同的颜色费用也不同,你需要设计一种染色方案使得相邻的房屋颜色不同,并且费用最小。费用通过一个nx3 的矩阵给出,比如cost[0][0]表示房屋0染红色的费用,cost[1][2]表示房屋1染绿色的费用。 注意事项所有费用都是正整数您在真实的面试中是否遇到过这个题?
2017-08-17 09:55:09 346
原创 lintcode --打劫房屋II
在上次打劫完一条街道之后,窃贼又发现了一个新的可以打劫的地方,但这次所有的房子围成了一个圈,这就意味着第一间房子和最后一间房子是挨着的。每个房子都存放着特定金额的钱。你面临的唯一约束条件是:相邻的房子装着相互联系的防盗系统,且 当相邻的两个房子同一天被打劫时,该系统会自动报警。给定一个非负整数列表,表示每个房子中存放的钱, 算一算,如果今晚去打劫,你最多可以得到多少钱 在不触动报警装置的情况下
2017-08-17 09:31:37 252
原创 lintcode--不同的二叉查找树II
给出n,生成所有由1...n为节点组成的不同的二叉查找树您在真实的面试中是否遇到过这个题? Yes样例给出n = 3,生成所有5种不同形态的二叉查找树:1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2
2017-08-17 09:14:02 350
原创 lintcode--完美平方
给一个正整数 n, 找到若干个完全平方数(比如1, 4, 9, ... )使得他们的和等于 n。你需要让平方数的个数最少。您在真实的面试中是否遇到过这个题? Yes样例给出 n = 12, 返回 3 因为 12 = 4 + 4 + 4。给出 n = 13, 返回 2 因为 13 = 4 + 9。/*采用
2017-08-17 09:00:28 367
原创 lintcode --最小路径和
给定一个只含非负整数的m*n网格,找到一条从左上角到右下角的可以使数字和最小的路径。 注意事项你在同一时间只能向下或者向右移动一步public class Solution { /*典型的动态规划解决最优化问题。对于这类问题,解决思路可分为以下两步:1. 找到最优化问题与其子问题之间的关系,也就是写出状态转移方程
2017-08-16 17:20:25 215
原创 lintcode--数字三角形
给定一个数字三角形,找到从顶部到底部的最小路径和。每一步可以移动到下面一行的相邻数字上。 注意事项如果你只用额外空间复杂度O(n)的条件下完成可以获得加分,其中n是数字三角形的总行数。您在真实的面试中是否遇到过这个题? Yes样例比如,给出下列数字三角形:[ [2], [3,4], [6,5,7
2017-08-16 16:47:43 275
原创 lintcode--二叉树中的最大路径和
给出一棵二叉树,寻找一条路径使其路径和最大,路径可以在任一节点中开始和结束(路径和为两个节点之间所在路径上的节点权值之和)您在真实的面试中是否遇到过这个题? Yes样例给出一棵二叉树: 1 / \ 2 3返回 6/** * Definition of TreeNode:
2017-08-16 16:21:45 428
原创 lintcode --不同的二叉查找树
给出 n,问由 1...n 为节点组成的不同的二叉查找树有多少种?您在真实的面试中是否遇到过这个题? Yes样例给出n = 3,有5种不同形态的二叉查找树:1 3 3 2 1 \ / / / \ \ 3 2 1 1
2017-08-16 16:00:16 175
原创 lintcode--打劫房屋
假设你是一个专业的窃贼,准备沿着一条街打劫房屋。每个房子都存放着特定金额的钱。你面临的唯一约束条件是:相邻的房子装着相互联系的防盗系统,且 当相邻的两个房子同一天被打劫时,该系统会自动报警。给定一个非负整数列表,表示每个房子中存放的钱, 算一算,如果今晚去打劫,你最多可以得到多少钱 在不触动报警装置的情况下。您在真实的面试中是否遇到过这个题? Yes样例
2017-08-16 15:45:22 244
原创 lintcode--
假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部?您在真实的面试中是否遇到过这个题? Yes样例比如n=3,1+1+1=1+2=2+1=3,共有3中不同的方法返回 3//动态规划public class Solution { public int cl
2017-08-16 15:16:55 267
原创 lintcode--背包问题II
给出n个物品的体积A[i]和其价值V[i],将他们装入一个大小为m的背包,最多能装入的总价值有多大? 注意事项A[i], V[i], n, m均为整数。你不能将物品进行切分。你所挑选的物品总体积需要小于等于给定的m。您在真实的面试中是否遇到过这个题? Yes样例对于物品体积[2, 3, 5, 7]和对应的价值[1, 5,
2017-08-15 10:43:16 188
原创 lintcode -- 背包问题
在n个物品中挑选若干物品装入背包,最多能装多满?假设背包的大小为m,每个物品的大小为A[i] 注意事项你不可以将物品进行切割。您在真实的面试中是否遇到过这个题? Yes样例如果有4个物品[2, 3, 5, 7]如果背包的大小为11,可以选择[2, 3, 5]装入背包,最多可以装满10的空间。如果背包的大小为12,可
2017-08-15 10:41:00 246
原创 lintcode--最长公共子序列
给出两个字符串,找到最长公共子序列(LCS),返回LCS的长度。您在真实的面试中是否遇到过这个题? Yes说明最长公共子序列的定义:最长公共子序列问题是在一组序列(通常2个)中找到最长公共子序列(注意:不同于子串,LCS不需要是连续的子串)。该问题是典型的计算机科学问题,是文件差异比较程序的基础,在生物信息学中也有所应用。https://
2017-08-15 10:15:05 225
原创 lintcode -- 交叉字符串
给出三个字符串:s1、s2、s3,判断s3是否由s1和s2交叉构成。您在真实的面试中是否遇到过这个题? Yes样例比如 s1 = "aabcc" s2 = "dbbca" - 当 s3 = "aadbbcbcac",返回 true. - 当 s3 = "aadbbbaccc", 返回 false./*
2017-08-15 10:06:14 267
原创 lintcode--格雷编码
格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个二进制的差异。给定一个非负整数 n ,表示该代码中所有二进制的总数,请找出其格雷编码顺序。一个格雷编码顺序必须以 0 开始,并覆盖所有的 2n 个整数。 注意事项对于给定的 n,其格雷编码顺序并不唯一。根据以上定义, [0,2,3,1] 也是一个有效的格雷编码顺序。您在真实的面试中是
2017-08-15 09:22:00 334
原创 lintcode --寻找旋转排序数组中的最小值 II
假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。你需要找到其中最小的元素。数组中可能存在重复的元素。 注意事项The array may contain duplicates.您在真实的面试中是否遇到过这个题? Yes样例给出[4,4,5,6,7,0
2017-08-13 10:47:13 169
原创 lintcode--寻找峰值
你给出一个整数数组(size为n),其具有以下特点:相邻位置的数字是不同的A[0] A[n - 1]假定P是峰值的位置则满足A[P] > A[P-1]且A[P] > A[P+1],返回数组中任意一个峰值的位置。 注意事项数组可能包含多个峰值,只需找到其中的任何一个即可您在真实的面试中是否遇到过这个题? Yes样例
2017-08-13 10:06:10 225
原创 lintcode--x的平方根
实现int sqrt(int x) 函数,计算并返回 x 的平方根。您在真实的面试中是否遇到过这个题? Yes样例sqrt(3) = 1sqrt(4) = 2sqrt(5) = 2sqrt(10) = 3/*思路:二分法博客*/public class Solution {
2017-08-13 09:44:26 277
原创 lintcode--寻找旋转排序数组中的最小值
假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。你需要找到其中最小的元素。你可以假设数组中不存在重复的元素。 注意事项You may assume no duplicate exists in the array.您在真实的面试中是否遇到过这个题? Yes样
2017-08-13 09:29:37 200
原创 lintcode--x的n次幂
实现 pow(x,n) 注意事项不用担心精度,当答案和标准输出差绝对值小于1e-3时都算正确您在真实的面试中是否遇到过这个题? Yes样例Pow(2.1, 3) = 9.261Pow(0, 1) = 0Pow(1, 0) = 1/**暴力很简单就可以实现,算法的复杂度是O(N),那么有什
2017-08-13 09:16:09 392
原创 lintcode --寻找缺失的数
给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数。您在真实的面试中是否遇到过这个题? Yes样例N = 4 且序列为 [0, 1, 3] 时,缺失的数为2。/*重新定义一个数组存放排序后的数,空间复杂度和时间复杂度都是O(N)public class Solution {
2017-08-12 12:50:00 240
原创 lintcode-- 删除数字
给出一个字符串 A, 表示一个 n 位正整数, 删除其中 k 位数字, 使得剩余的数字仍然按照原来的顺序排列产生一个新的正整数。找到删除 k 个数字之后的最小正整数。N k N您在真实的面试中是否遇到过这个题? Yes样例给出一个字符串代表的正整数 A 和一个整数 k, 其中 A = 178542, k = 4返回一个字符串 "12"
2017-08-12 10:45:06 191
原创 lintcode -- 落单的数III
给出2*n + 2个的数字,除其中两个数字之外其他每个数字均出现两次,找到这两个数字。您在真实的面试中是否遇到过这个题? Yes样例给出 [1,2,2,3,4,4,5,3],返回 1和5/*当然对于这样的题目,利用HashMap是最简单不过的了。*/public class Solution { pu
2017-08-12 10:07:37 246
原创 lintcode--加油站
在一条环路上有 N 个加油站,其中第 i 个加油站有汽油gas[i],并且从第_i_个加油站前往第_i_+1个加油站需要消耗汽油cost[i]。你有一辆油箱容量无限大的汽车,现在要从某一个加油站出发绕环路一周,一开始油箱为空。求可环绕环路一周时出发的加油站的编号,若不存在环绕一周的方案,则返回-1。 注意事项数据保证答案唯一。您在真实的面试中是否遇到
2017-08-11 09:11:25 227
原创 lintcode--l落单的数
给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字。您在真实的面试中是否遇到过这个题? Yes样例给出 [1,2,2,1,3,4,3],返回 4public class Solution { public static int singleNumber(int[] arr){
2017-08-09 16:32:14 248
原创 lintcode--主元素
给定一个整型数组,找出主元素,它在数组中的出现次数严格大于数组元素个数的二分之一。 注意事项You may assume that the array is non-empty and the majority number always exist in the array.您在真实的面试中是否遇到过这个题? Yes样例
2017-08-05 15:37:02 245
原创 lintcode--二进制有多少个1
计算在一个 32 位的整数的二进制表示中有多少个 1.您在真实的面试中是否遇到过这个题? Yes样例给定 32 (100000),返回 1给定 5 (101),返回 2给定 1023 (111111111),返回 9public class Solution { /*这种方法速度比较快,其运算次数与输入
2017-08-04 16:55:38 484
原创 lintcode -- A+B问题
给出两个整数a和b, 求他们的和, 但不能使用 + 等数学运算符。 注意事项你不需要从输入流读入数据,只需要根据aplusb的两个参数a和b,计算他们的和并返回就行。您在真实的面试中是否遇到过这个题? Yes说明a和b都是 32位 整数么?是的我可以使用位运算符么?当然可以/
2017-08-04 16:43:07 178
原创 lintcode--乘积最大子序列
找出一个序列中乘积最大的连续子序列(至少包含一个数)。您在真实的面试中是否遇到过这个题? Yes样例比如, 序列 [2,3,-2,4] 中乘积最大的子序列为 [2,3] ,其乘积为6。/*分析:假设数组为a[],直接利用动归来求解,考虑到可能存在负数的情况,1.用Max[i]来表示以a[i]结尾的最大连续子序列的乘
2017-08-02 09:24:23 256
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人