根据Tenenbaum 的使用 C的数据结构,冒泡排序的改进之一是让连续通过以相反的方向进行,以便小元素快速移动到前面,这将减少所需的通过次数 [pg 336]。我设计了两个例子,一个支持这个说法,另一个反对这个说法。
Supports: 25 48 37 12 57 86 33 92
iterations using usual Bubble sort :
25 48 37 12 57 86 33 92
25 37 12 48 57 33 86 92
25 12 37 48 33 57 86 92
12 25 37 33 48 57 86 92
12 25 33 37 48 57 86 92
iterations using improvement:
25 48 37 12 57 86 33 92
25 37 12 48 57 33 86 92
12 25 37 33 48 57 86 92
12 25 33 37 48 57 86 92
against: 3 4 1 2 5
iterations using usual Bubble sort:
3 4 1 2 5
3 1 2 4 5
1 2 3 4 5
iterations using improvement:
3 4 1 2 5
3 1 2 4 5
1 3 2 4 5
1 2 3 4 5
那么这种改进总是有帮助的说法是错误的吗?或者我在这里做错了什么?