交换元素使序列有序求最少交换次数的题有两类,第一种是只能交换相邻元素使序列有序,求最小交换次数,假如是是序列升序,只需要求逆序对数。第二种是可以交换任意两个位置的元素,使之有序,求最小交换次数,答案是数字的个数减去交换数字形成的环(置换环)的个数。比如 {5 1 3 2 4 7 6 8 } ,求将这个序列变成升序序列的最小交换次数,那么这个序列中的环有 { 5 ,1,2,4},{7,6},{3},{8},那么最小交换次数就是 8-4,求降序的最小交换次数,只需要将序列逆置,再进行求解 。
本文共 296 字,大约阅读时间需要 1 分钟。
交换元素使序列有序求最少交换次数的题有两类,第一种是只能交换相邻元素使序列有序,求最小交换次数,假如是是序列升序,只需要求逆序对数。第二种是可以交换任意两个位置的元素,使之有序,求最小交换次数,答案是数字的个数减去交换数字形成的环(置换环)的个数。比如 {5 1 3 2 4 7 6 8 } ,求将这个序列变成升序序列的最小交换次数,那么这个序列中的环有 { 5 ,1,2,4},{7,6},{3},{8},那么最小交换次数就是 8-4,求降序的最小交换次数,只需要将序列逆置,再进行求解 。
转载于:https://www.cnblogs.com/Roni-i/p/9375450.html