方法
先设计2输入的比较器,输入为A,B,输出为MAX(A,B),MIN(A,B) 再根据若干二输入比较器,设计四输入的排序算法: 如下图所示,AB,CD分别经过2输入比较器,得到B,A,C,D,满足 B>A,C>D,则易知,B=MAX(C,B)即为四个数中的最大值,D=MIN(A,D)为四个数中的最小值,至于剩下的A,C,进行比较后,分别为第二大和第三大的数。
再根据4输入排序器设计8输入排序器,如下图所示,经过第一轮排序后,有 B>C>A>D H>F>E>G 再将BCHF进行排序,可得到8个数中的最大值H和次大值B,对ADEG进行排序,可得到8个数中的最小值G和次小值D,最后,对第二轮输出的C,F,A,E再经过一轮四输入排序即可。
二输入比较器