白色高跟鞋
白色高跟鞋
全部文章
分类
题解(24)
归档
标签
去牛客网
登录
/
注册
Creep
一天一点进步
全部文章
(共24篇)
[网易笔试]疯狂队列:排序以最大化数组两两间差的绝对值之和[python]
很显然最终的排序结果必为交叉排布的,且符合[...低 高 低 高...]的形式;1.所以先对数列升序排序,很容易想到高的部分是数组的后一半,低的部分是数组的前一半。2.观察[...低1, 高1, 低2, 高2...]的形式,两两间差的绝对值之和=(高1-低1)+(高1-低2)+(高2-低2).......
2020-07-31
2
4681
[左神面试]画匠问题:[贪心]
def solution(arr, num): # 工作清单和工人数目 | O(N*logS), S=sum(arr) assert arr and len(arr) and num if len(arr) <= num: # 如果工人过多,则是取最长的一个工作返回 ...
2020-06-26
1
1154
[左程云]将搜索二叉树转换成双向链表[python][递归]
两种方法:借用一个容器如队列、递归解决。【本题python给的时间太少,单IO就超时,不用尝试使用Python求解了】 先给出一个本题构建树的IO方法: # --BEG: INPUT AND BUILD TREE--- # class Node: def __init__(self, x=N...
2020-06-22
0
1263
[面试手撕题]最长公共字串:[python][动态规划]
动态规划: a, b = input(), input() f = [[0] * (len(b) + 1) for _ in range(len(a) + 1)] # f[i][j] 以a[i]和b[j]结尾的共同子串长度 end, max_len = 0, 0 for i in range(l...
2020-06-20
2
977
[面试手撕]如何在不排序的情况下求数组的中位数:[数组]
给出一种非排序的方法,复杂度为O(NlogN),但在实际执行时要比排序快(因为并不需要全排序)—— 找到一组数据的中位数,就是找到第lenth/2的数,因此参考此题即可: https://www.nowcoder.com/practice/673454422d1b4a168aed31e449d87...
2020-06-20
1
1871
[面试手撕]查找第K大的元素:[数组][快排]
其实不一定需要排序,采用类似快排的想法,随机挑选划分成三堆:比P小的、P、大等于P的。然后判断P在当前子序列中的位置距离,其右侧有几个比它大的: k-1个比它大的,返回P即可; 比k-1个少,在左侧序列中到k-1-offset个即可。offset是当前比P大的个数。 比k-1个多,迭代右侧序列。 ...
2020-06-20
2
1181
字符串:字符串距离计算[字典]
参考 @ztxz16 的解答,改写了个简短的python代码: @ztxz16: https://blog.nowcoder.net/n/21d889d1febd4f9998e70280b813846a def cal(s1, s2): dp = [[0] * 26 for _ in r...
2020-05-16
2
1141
字符串数组:最大数(十六进制)[python][正则]
python正则一行: import re # python:3 print(max([int(i, base=16) if len(i) > 0 else 0 for i in re.split(r'[^0123456789ABCDEF]', input())]))
2020-05-12
4
1049
NC16691:最大公约数和最小公倍数问题[python][暴力枚举]
暴力枚举可过: # a*b = x0 * y0 import math x0, y0 = map(int, input().split()) a_b = x0 * y0 cnt = 0 for i in range(2, a_b): j, j_y = divmod(a_b, i) i...
2020-05-05
0
786
2020网易:丰收[python][哈希][二分查找]
想了两个非暴力的解法:哈希表、前缀+二分查找,写法巧妙的话均能通过。 IO 部分都相同: n = int(input()) a = list(map(int, input().split())) # 左往右数第i堆有多少苹果 m = int(input()) q = list(map(int, i...
2020-04-29
1
7611
首页
上一页
1
2
3
下一页
末页