[LeetCode] 1051. Height Checker
时间:2019-09-09
本文章向大家介绍[LeetCode] 1051. Height Checker,主要包括[LeetCode] 1051. Height Checker使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Easy
Students are asked to stand in non-decreasing order of heights for an annual photo.
Return the minimum number of students not standing in the right positions. (This is the number of students that must move in order for all students to be standing in non-decreasing order of height.)
Example 1:
Input: [1,1,4,2,1,3] Output: 3 Explanation: Students with heights 4, 3 and the last 1 are not standing in the right positions.
Note:
1 <= heights.length <= 100
1 <= heights[i] <= 100
题目大意:给出一组表示学生身高的数字,学生身高应该非降序排列,求出已给的顺序中未按照要求排在自己位置上的数字的个数。
比如[1,1,4,2,1,3],输出结果是3,因为这个顺序中4,3和最后一个1未排到要求的位置上。
这道题一个思路是对这个数组进行排序,然后比较排序前和排序后的数组对应元素不相等的个数。
代码如下:
class Solution { public: int heightChecker(vector<int>& heights) { if (heights.empty())return 0; int res = 0; vector<int> temp=heights; for(int i=1;i<temp.size();++i){ if(temp[i]<temp[i-1]){ int m = i, n = i-1; while (n>=0) { if (temp[m] < temp[n]) { swap(temp[m], temp[n]); m--; } n--; } } } for(int i=0;i<heights.size();++i){ if(temp[i]!=heights[i])res++; } return res; } };
这里我自己写了排序函数,也可以直接调用排序函数sort()
class Solution { public: int heightChecker(vector<int>& heights) { if (heights.empty())return 0; int res = 0; vector<int> temp=heights; sort(temp.begin(),temp.end()); for(int i=0;i<heights.size();++i){ if(temp[i]!=heights[i])res++; } return res; } };
原文地址:https://www.cnblogs.com/cff2121/p/11491363.html
- React项目配置5(引入MockJs,实现假接口开发)
- POj 1611 The Suspects
- React项目配置4(如何在开发时跨域获取api请求)
- Laravel-博客实战+踩坑laravel-blog最终的效果踩的坑
- React项目配置3(如何管理项目API接口)
- React第三方组件3(状态管理之Flux的使用④TodoList下)
- React第三方组件3(状态管理之Flux的使用③TodoList中)
- Vue实现百度下拉提示搜索一、前期准备二、代码实现三、实现效果
- React第三方组件3(状态管理之Flux的使用②TodoList上)
- ggplot2玫瑰图案例——星巴克门店分布图
- React第三方组件3(状态管理之Flux的使用①简单使用)
- 用ggplot2画了一个我也叫不上名的炫酷图表
- React技巧8(不再手动绑定this,跟.bind(this)说88)
- 美美的商务范儿——ggplot2蝴蝶图
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法