阶段三1.5.5选择排序算法,这个deamo里讲到交换元素这个环节有点省略,如下图所示。
自己并不能读懂这里的程序,前面读的还好,就是到这个地方卡住了。
主要自己不理解的地方在于这段语句, IF #tempMin <> #tempExCount THEN
如果最小值不等于外层的计数值,那么就开始下面的MOVE_BLK_VARIANT操作。
我自己假设排序元素1,3,2那么这个#tempExCount,就在0~1两个位置之间。
那么由于上面已经查找到了最小值为1占据第一个位置,即只能选择第二个位置。
我自己在里面赋值,三个MOVE_BLK_VARIANT,第一个是把最小值赋值给临时变量。
第二个是把我之前假设的当前位置元素送到最小元素位置,即把这个第二个位置的元素送给第一个位置。
这边就应该得到新的数组3,3,2
最后再把之前的临时变量的值送到第二个位置,即最终数组3,1,2。
我的理解能力较差,所以这个我说的不对,我指点,因为在DB块里是可以实现排序功能的。
但是这个点我想不通是要怎么去理解,希望老师能够详细翻译一下,视频我也看了几遍就是不能理解。
能不能再通俗的讲一下,麻烦老师了。