费号回收的问题!请大家帮忙
1.如果系统中有编号为1,2,3,4,5的料,那我如果加料的话为6。
2.如果系统中有编号为1,3,5,6的料,那我加料的话为先为2,然后再加料的话为4,然后为7,8,9!
3.如果系统中有1,1,1,2,3,4,5,那我再加料的话也为6,就是容许有重复的编号!
我现在已经实现了1,2的功能,但现在出现了BUG,就是没考虑到3的情况,不知道有那位大侠能解决!!!
问题点数:0、回复次数:5Top
1 楼andyli6433()回复于 2005-06-02 19:16:08 得分 0
我的功能是用2分法解决的Top
2 楼andyli6433()回复于 2005-06-02 19:23:17 得分 0
if(num == size)
{
mid = ++size;
}
else
{
lo = 1, hi = size, mid = (lo+hi)/2;
while(lo<hi)
{
GetAtt(low_set_get(setItem, mid-1), bbkSeqAttr, &pStr);
num = low_atoul(pStr);
if(mid == num)//right
{
lo = mid + 1;
}
else//left
{
hi = mid ;
}
mid = (lo+hi)/2;
}
if(lo>hi) mid ++;
}
}
else//New
{
mid = 1;
} Top
3 楼andyli6433()回复于 2005-06-02 19:32:45 得分 0
这个不要!!!
else//New
{
mid = 1;
}
Top
4 楼mostideal(三甲)回复于 2005-06-02 22:38:30 得分 0
dingTop
5 楼andyli6433()回复于 2005-06-06 20:26:21 得分 0
怎么没人会的啊Top




