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大数。