算法(Algorithms)第4版 练习 1.5.8

假设原id数组:

0 1 1 4 4 8 6 1 8 0

输入p = 5, q = 7

则输出结果会出错,最终为:

0 1 1 4 4 1 6 1 8 0

因为当id[p](id[5] = 8)被赋值为id[q](id[7] = 1)之后,再用if(id[i] == id[p])来判断id[8]时,就会判断id[8] != id[5]。

这里就出错了,因为id[8]和id[5]是同个组的。

原文地址:https://www.cnblogs.com/songdechiu/p/6561561.html