首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
可恶,被他装到了
获赞
0
粉丝
0
关注
4
看过 TA
0
男
浙江工业大学
2019
算法工程师
IP属地:未知
打怪升级中……经验+1
私信
关注
拉黑
举报
举报
确定要拉黑可恶,被他装到了吗?
发布(7)
刷题
可恶,被他装到了
2021-08-31 17:32
算法工程师
题解 | #出现一次的数字ii#
有两种方法:(1)对A进行sort排序,那么出现三次的数字就会被排在一起,例如:1,1,1,2,3,3,3。这样我们只要用指针一个个遍历过去,若A[i]=A[i+1],则跳过下个,即i += 3,直至找到A[i]!=A[i+1],输出A[i]即可;(2)直接依序遍历A中所有数字进行判断及运算,初始化一个值result = 0,对于第i位数字,是否在其后续还存在这个数字,若是,则result -= i,反之则result += 2i;若i是出现三次的,必然有result - i - i + 2i = result,不影响结果,影响结果的只有唯一的只出现一次的数字,因此最终return int(r...
0
点赞
评论
收藏
转发
可恶,被他装到了
2021-08-19 18:12
算法工程师
题解 | #剪绳子#
这是个数学问题,存在这样一个“定律”:考虑一个比较大的数字n,当他被减掉m的时候:如果n-m >= n/2,且m >= 2,显然(n-m)*m要比原值n更大 那么当m = 1时,没有意义m等于2时,增幅2倍m等于3时,增幅3倍,效果比m=2时更强当m等4时,m本身也开始使用“定律”,因此4本身也可切分为2和2,只是这种切分和原值恰好一致当m等5时,必然需要切分,切分后转化为2、3, 23>5因此,切分的值m不必大于3,而切分为2还是切分为3,由举例规律我们可以直接知道,例如6:6 = 2 + 2 + 2, 222 = 86 = 3 + 3, 33 = 9显然,应当先切分出3...
0
点赞
评论
收藏
转发
可恶,被他装到了
2021-08-16 22:19
算法工程师
题解 | #栈的压入、弹出序列#
栈的压入、弹出的概念请百度例如【3,2,1,4,5】 ,若待判断的弹出序列为【4,5,1,2,3】,则实际操作为:第一步:先依次压入3,2,1,得到【3,2,1】,随后压入4,并弹出4,完成了4的压入和弹出;第二步:我们完成了4的弹出,依据弹出序列,接下来需要弹出5,此时可行的情况是,弹出已压入的最后一位3或者再压入5弹出5,显然,待弹出的数字5与剩余待压入的5一致,因此,先压入5,再弹出5;第三步:由于此时的压入序列为【3,2,1】,则依次从尾部弹出1,2,3即可; 经过上述示例的说明(这个游戏有点像window系统自带的纸牌游戏),可弹出的数字只能是已压入序列的最后一位或者还还未压入的数字...
0
点赞
评论
收藏
转发
可恶,被他装到了
2021-08-12 22:47
算法工程师
2021-08-12
在牛客打卡2天,今天学习:刷题 2 道/代码提交 5 次
每日监督打卡
0
点赞
评论
收藏
转发
可恶,被他装到了
2021-08-12 22:45
算法工程师
题解 | #第一个只出现一次的字符#
我写完后发现好像还没有人这么提出过一个这样的思路:1、采用set函数,直接建立一个不含重复字母的集合;2、遍历s字符串中的所有字母,采用enumerate()函数同步返回索引index与字母i;3、若i在set集合中,说明i必然是第一次出现,此时先从set中移除i,防止下一次再搜索,然后从字符串s中切割出index+1至末尾的字符串,因为之前的字符串一定不可能有i的重复项(因为我们的遍历顺序就是自左向右的)4、若3中找到了i的重复项,则跳过循环,按照步骤2、3重新比对s中的下一个字母,反之,则直接return 步骤2中的index即可;5、若遍历完s后依旧没有找到不重复项,则在代码末尾retu...
0
点赞
评论
收藏
转发
可恶,被他装到了
2021-08-09 22:03
算法工程师
题解 | #整数中1出现的次数(从1到n整数中1出现的次数)#
本题解决思路:递归算法 具体思路: 编写一个输入为数字n的函数: 若n为个位数,且n<1,则1出现的次数为0; 若n为个位数,且n<10,则1出现的次数为1; 以上是显然的,一下为了更简明的说明原理,适当的地方以n为21231为例进行说明 若n不为个位数,则对n进行"降位"(假设n去掉首位后的剩余数字为m,例如21231去掉首位后为1231),具体情况又依据首位的数字不同而有不同情况:(显然n的首位数字必然大于等于1) 若n的首位数字为1,则说明当1作为首位时,共计出现m+1次(之所以+1是因为存在m为0000这种情况)...
0
点赞
评论
收藏
转发
可恶,被他装到了
2021-08-09 12:50
算法工程师
2021-08-09
在牛客打卡1天,今天学习:刷题 1 道/代码提交 10 次
每日监督打卡
0
点赞
评论
收藏
转发
1
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务