举例:5 4 8 9 1  7 6 2 3  本质上就是找到最小的数,然后从最小的数开始一直到后面的最长有序序列。
首先找到最小数1。1左边的肯定要移动,直接不用管。
5 4 8 9  1  6 7 2 3 
从1开始,6大于1,标记f1为5,即已排序的下标;标记f2为5,即为已遍历的下标。
7大于6,标记f1为6,f2为6。
2小于6,标记f1位5,f2为7,且序列变为5 4 8 9  1  2 7 2 3
3大于2,标记f1位6,f2为8,且序列变为5 4 8 9  1  2 3 2 3
最后用标记f1,即最后需要找的序列,减去最小数的下标,即为他的长度,也就是最小的数开始一直到后面的最长有序序列的长度m。所以最后的结果为 N(总长度)-m。@尤里卡斯特 中间查找比较的时候可以用二分优化下。。