主题:你们会不会啊????
bool isEqual(List LA, List LB)
{
// 若线性表 LA 和 LB 不仅长度相等,且所含数据元素也相同,
// 则返回 TRUE,否则返回 FALSE。
La_len = Listlength(LA);
Lb_len = Listlength(LB);
如果"集合"中的元素不能保证都相异,那么这个问题的算法应如何写?
除了判别每个 LA 中的元素在 LB 中都存在之外,还应反过来判别 LB 中每个元素都能在 LA 中找到相同者。你不妨试试写一下这个算法。
if ( La_len != Lb_len ) return FALSE; // 两表的长度不等
else
{
i = 1; found = TRUE;
while ( i<= La_len && found )
{
GetElem( LA, i, e ); // 取得 LA 中一个元素
if ( LocateElem(LB, e, equal( ) )
i++; // 依次处理下一个
else found = FALSE; // LB中没有和该元素相同的元素
} // while
return found;
} // else
} // isEqual
写个小程序啊!!![em1]
{
// 若线性表 LA 和 LB 不仅长度相等,且所含数据元素也相同,
// 则返回 TRUE,否则返回 FALSE。
La_len = Listlength(LA);
Lb_len = Listlength(LB);
如果"集合"中的元素不能保证都相异,那么这个问题的算法应如何写?
除了判别每个 LA 中的元素在 LB 中都存在之外,还应反过来判别 LB 中每个元素都能在 LA 中找到相同者。你不妨试试写一下这个算法。
if ( La_len != Lb_len ) return FALSE; // 两表的长度不等
else
{
i = 1; found = TRUE;
while ( i<= La_len && found )
{
GetElem( LA, i, e ); // 取得 LA 中一个元素
if ( LocateElem(LB, e, equal( ) )
i++; // 依次处理下一个
else found = FALSE; // LB中没有和该元素相同的元素
} // while
return found;
} // else
} // isEqual
写个小程序啊!!![em1]