1.出现超过n/2次的数字
超过n/2次,即比所有别的数字出现的数字次数加起来还多
那么我们用一个计数器,选定初始值,遇到
==它的,cnt++,
!=它的,cnt--。
每次cnt = 0时,初始值变为当前值。
最后这个数字即为所求。
2.无序序列转变为有序序列最少需要多少次swap。
(1)可以交换任意两个
寻找循环节个数。
eg.1>3>4>2>5
循环节为:(1,5)(2,3,4)
显然,有一个循环节就少交换一次。
所以答案为n-num(循环节)
(2)只能交换相邻的
ans为逆序数。
考虑到,每swap一次就少一个逆序对,所以答案就是逆序数。