请你说一说洗牌问题的思路并手写代码,并设计测试用例
发布于 2020-01-27 19:56:32
关注者
0
被浏览
810
1 个回答
-
参考回答:
洗牌问题:有个长度为2n的数组{a1,a2,a3,…,an,b1,b2,b3,…,bn},希望排序后{a1,b1,a2,b2,….,an,bn},请考虑有无时间复杂度o(n),空间复杂度0(1)的解法。
void PerfectShuffle(int *A,int n){ if(n <= 1){ return; }//if // int size = 2*n; int index,count; for(int i = n;i < size;++i){
// 交换个数
count = n - (i - n) - 1;
// 待交换
index = i; for(int j = 1;j <= count;++j){ swap(A[index],A[i-j]); index = i - j; }//for }//for } };
可以就数组的类型,可以是int型的,浮点型的,还可以是大数类型,负数,进行测试。
推荐阅读
-
请你说一说测试用例的边界
2020-01-26 关注 0 浏览521 1答案
-
请你说一说快速排序,并手写代码
2020-01-27 关注 0 浏览946 1答案
-
请你说一说洗牌算法?
2020-01-30 关注 0 浏览550 1答案
-
请你说一下设计测试用例的方法
2020-01-26 关注 0 浏览477 1答案
-
请你说一说测试的常用方法
2020-01-26 关注 0 浏览669 1答案
-
请你说一说Top(K)问题?
2020-01-30 关注 0 浏览631 1答案
-
请你说一说app测试的工具
2020-01-26 关注 0 浏览871 1答案
-
请你说一下如何写测试用例
2020-01-26 关注 0 浏览608 1答案
-
请你说一说当前工作中涉及的测试问题(测试流程和测试性能)
2020-01-27 关注 0 浏览591 1答案
-
给你一个字符串,你怎么判断是不是ip地址?手写这段代码,并写出测试用例
2020-01-27 关注 0 浏览3130 1答案