Sorting 选择排序计数交换数
这对吗?5 4 3 2 1的选择排序,我看到2次交换,但小程序正在计算4次交换….我想这是定义问题。他在每个循环的末尾进行交换,即使他在交换一个元素与它自身。在他的情况下,互换将是:Sorting 选择排序计数交换数,sorting,Sorting,这对吗?5 4 3 2 1的选择排序,我看到2次交换,但小程序正在计算4次交换….我想这是定义问题。他在每个循环的末尾进行交换,即使他在交换一个元素与它自身。在他的情况下,互换将是: 原件:5 4 3 2 1 互换位置1和5:1 4 3 2 5 交换位置2和4:1 2 3 4 5 互换位置3和3:1 2 3 4 5 交换位置4和4:1 2 3 4 5 (由于最后一个元素始终位于正确的位置,因此未对其进行交换) 一个简单的if语句可以用来消除最后两次交换。-5 4 3 2 1(初始状态)-1
- 原件:5 4 3 2 1
- 互换位置1和5:1 4 3 2 5
- 交换位置2和4:1 2 3 4 5
- 互换位置3和3:1 2 3 4 5
- 交换位置4和4:1 2 3 4 5
一个简单的if语句可以用来消除最后两次交换。-5 4 3 2 1(初始状态)-1 4 3 2 5(交换5和1)-1 2 3 4 5(交换4和2)是的,我同意。将一个元素与自身交换是没有用的。