李均成
【摘要】以代數(shù)的方法證明冒泡排序過程中元素的對換次數(shù)就是排列的逆序數(shù).
【關(guān)鍵詞】冒泡排序;對換次數(shù);排列;逆序數(shù)
證明:不失一般性地,以由若干自然數(shù)作元素的全排列為例,規(guī)定從左到右由小到大為標(biāo)準(zhǔn)次序.
對相鄰元素的對換,考慮如下排列:
m1,m2,…,mi,a,b,mj,…,mn.(1)
記此排列的逆序數(shù)為T1.為使a,b兩元素具備對換條件,設(shè)a>b,并且m1,m2,…,mi已按冒泡排序的規(guī)則排為標(biāo)準(zhǔn)次序.繼此對a,b兩元素比較大小并對換,排列變?yōu)?/p>
m1,m2,…,mi,b,a,mj,…,mn.(2)
記此排列的逆序數(shù)為T2.對換后,元素m1,m2,…,mi,mj,…,mn的逆序數(shù)不變,元素a的逆序數(shù)也不變,元素b的逆序數(shù)減1.因此,對換后,排列(2)中各元素的逆序數(shù)之和(即排列(2)的逆序數(shù))為T2=T1-1,
即a,b兩相鄰元素對換后,排列的逆序數(shù)減1.
對非相鄰元素的對換,考慮如下排列:
a,m1,m2,…,mn,b.(3)