【题目描述】
学校在拍年度纪念照时,一般要求学生按照 非递减 的高度顺序排列。
请你返回至少有多少个学生没有站在正确位置数量。该人数指的是:能让所有学生以 非递减 高度排列的必要移动人数。
【示例】
输入:[1,1,4,2,1,3]
输出:3
解释:
高度为 4、3 和最后一个 1 的学生,没有站在正确的位置。
【提示】
1、1 <= heights.length <= 100
2、1 <= heights[i] <= 100
【解1】
1、非递减排列 就是 递增排列;
2、对比的是有多少人没有站到应该站额位置
3、排序下原数组,然后和原数组比较,返回位置不同的count之和
func heightChecker(_ heights: [Int]) -> Int {
var tmp = heights.sorted()
var result = 0
for i in 0..<heights.count {
if tmp[i] != heights[i] {
result += 1
}
}
return result
}
【解2】拨云见日的思路...