最少次数
http://www.51nod.com/question/index.html#!questionId=692
800個亂序的數,現唯一能做的操作是取出一個數放在其它數之間的任意位置上(包括兩端)。在已知這800個亂序的數的狀態下,至少需要進行多少次這樣的操作,可以使這800個數正序排列?
舉一個例子, 134562,只要將2取出,放在1和3之間,即可。 另一個例子, 612345,只要將6取出,放在最后即可。?
相當于求最長遞增子序列,交換次數為n-最長遞增子序列的長度。 2 1 4 5 3兩次操作就可以,先換1 2,再把3插入到中間就可以。
總結