【发布时间】:2010-07-01 16:11:28
【问题描述】:
我需要交换两个非重复序列(数组)中的前 n 个元素,其中 n 是一个随机整数。
Seq1:1 4 5 6 9 8 2 3 7
Seq2:3 9 1 2 8 7 4 5 6
如果 n = 4
Seq1:3 9 1 2 | 9 8 2 3 7
Seq2:1 4 5 6 | 8 7 4 5 6
现在我需要通过替换“|”之后的重复数字来修复序列。
如何做到这一点?
这是我的努力..
for(left1 = 0; left1<pivot; left1++)
{
for(right1 = pivot; right1 < no_jobs; right1++)
{
if(S1->sequence[left1] == S1->sequence[right1])
{
for(left2 = 0; left2<pivot; left2++)
{
for(right2 = pivot; right2<no_jobs; right2++)
{
if(S2->sequence[left2] == S2->sequence[right2])
{
swap_temp = S1->sequence[right1];
S1->sequence[right1] = S2->sequence[right2];
S2->sequence[right2] = swap_temp;
break;
}
}
}
}
}
}
【问题讨论】:
-
两个序列的长度是否总是相等的?
-
“通过替换重复的数字来修复序列”是什么意思?您能否提供一个成品示例(显示中间步骤)?
-
这个问题是来自课堂上的家庭作业吗?
-
@srikfreak 是的..长度是相等的。
-
@Heath Hunnicutt 它是我正在进行的项目的一部分。