1.平时洗牌是两打牌,交叉洗在一起.
也就是开始 1 2 3 4 5 6 7 8
第一次 1 5 2 6 3 7 4 8
第二次 1 3 5 7 2 4 6 8
。。。
第k次 ...
给你一个数组a[2N],要求在O(1)的空间复杂度内给a[2N]k次洗牌.
2.给定一个整型数n,求出跟n最接近的2的m次方,求出m的值。
3.给定一个数组(无序),例如
Index 1 2 3 4 5(数组下标)
ArrayA 5 3 4 2 1(数组值)
求得一个新的数组ArrayB的每一个下标下的值为ArrayA内该下标右边的值比该下标大的数的总数。
ArrayB 3 1 0 0 0
要求时间复杂度为nlgn
4.一个rand()函数成随机产生0-1的实数,求利用这个rand()函数产生0-10的实数?求利用这个rand()函数产生1-10的自然数?
5.一个整数n的分解:
n=5: 1,1,1,1,1 1,1,1,2 1,2,2 1,1,3 2,3
6.给定两个有序的数组ArrayA,ArrayB,ArrayA与ArrayB中任意两个数(ArrayA抽取一个,ArrayB抽取一个)相加的和,求出这些和的前k大数。
本文包含了一系列算法挑战题目,包括数组操作、随机数生成、整数分解等,旨在帮助读者理解和掌握算法实现技巧。
46万+

被折叠的 条评论
为什么被折叠?



