数组中第三大的数 leetcode 414
数组中第三大的数:
class Solution {public int thirdMax(int[] nums) {int len = nums.length;int max = nums[0];int center = nums[0];int min = nums[0];int swp;int[] third = new int[3];int k= 0;boolean flag = false;for(int i=1;i<len;++i){if(nums[i]!=max&&!flag){center = nums[i];if(center>max){swp = max;max = center;center = swp;}flag = true;}else if(nums[i]!=max&&nums[i]!=center&&flag){min = nums[i];if(min>max){swp = max;max = min;min = center;center = swp;}else if(min>center){swp = center;center = min;min = swp;}else{}k = i+1;break;}else{}}if(k!=0){for(int i=k;i<len;++i){if(nums[i]<=min||nums[i]==center||nums[i]==max){}else if(nums[i]>max){swp = max;max = nums[i];min = center;center = swp;}else if(nums[i]>center){swp = center;center = nums[i];min = swp;}else{min = nums[i];}}return min;}else{return max;}} }
转载于:https://www.cnblogs.com/erdanyang/p/11512216.html
数组中第三大的数 leetcode 414相关推荐
- LeetCode——寻找数组中第三大的数
给定一个非空数组,返回此数组中第三大的数.如果不存在,则返回数组中最大的数.要求算法时间复杂度必须是O(n). 示例 1: 输入: [3, 2, 1] 输出: 1 解释: 第三大的数是 1. 示例 2 ...
- 每天一道LeetCode-----找到给定数组中第三大的值
原题链接Third Maximum Number 要求找到给定数组中第三大的数.其中第一大的数,第二大的数,第三大的数互不相同,即严格的小于关系.并且规定时间复杂度是O(n).另外如果找不到第三大的数 ...
- C语言判断数组中是否存在该数
C语言判断数组中是否存在该数 #include<stdio.h> int main() {int query(int a[10],int num);int num;printf(" ...
- numpy找到数组中符合条件的数
numpy找到数组中符合条件的数 import numpy as nparr = np.array([1, 1, 1, 134, 45, 3, 46, 45, 65, 3, 23424, 234, 1 ...
- 算法---找到数组中第二大的数
题目 找到无序数组中第二大的数 思路 我们可以用两个容器记录所有遍历过的元素中,第一大和第二大的数,在后续的遍历过程中,我们不断更新这两个值即可.时间复杂度O(n) 实现方法: public stat ...
- c++求数组中出现频率最高的数
在C++中求数组中出现频率最高的数mode. 即:众数(Mode)统计学名词,在统计分布上具有明显集中趋势点的数值,代表数据的一般水平(众数可以不存在或多于一个). 修正定义:是一组数据中出现次数最多 ...
- 如何求数组中绝对值最小的数?
""" 有一个升序排列的数组,数组中可能有正数,负数或0,求数组中元素的绝对值最小的数.例如,数组[-10,-5,-2,7,15,50],该数组中绝对值最小的数是2 &q ...
- java 算法之找出数组中第二大的数
1.如果仅考虑实现功能而不考虑效率,可以先通过排序算法将数组排序,然后根据数组下标来访问数组中第二大的数,,最快的排序算法一般为快速排序算法,但是其时间复杂度为(nlogn),根据下标访问需要便利一遍 ...
- 删除重复的数字c语言,(C语言)删去一维数组中所有相同的数
<(C语言)删去一维数组中所有相同的数>由会员分享,可在线阅读,更多相关<(C语言)删去一维数组中所有相同的数(2页珍藏版)>请在人人文库网上搜索. 1.1. 删去一维数组中所 ...
- 剑指offer刷题(java)|二维数组中的查找|替换空格|leetcode刷题
文章目录 前言 一.二维数组中的查找 题目 题解一 题解二 题解三 二.替换空格 题目 题解一 题解二 题解三 前言 本文主要是写了我做算法题的思路以及对其他优秀题解的自我理解. 一.二维数组中的查找 ...
最新文章
- python3 字符串格式化
- SpringBoot图文教程9—SpringBoot 导入导出 Excel 「Apache Poi」(亲测)
- PHP水果店管理系统,水果店连锁店管理系统实现一体化功能
- Python的第三方库xlwt
- 两万字长文读懂 Java 集合!
- 用 Node.js 把玩一番 Alfred Workflow
- 十大java视频学习网站
- 如何使用bat批处理命令打开WSL
- (附源码)ssm牙科诊所预约网站 毕业设计 260952
- DP动态规划--乡村邮局问题-Post Office(POJ-1160)
- c语言中compar的用法,C/C++中关于std::string的compare陷阱示例详解
- Activity焦点
- qtxlsx读写 excel
- Cesium 加载地形数据
- 尽管凭借主持人的身份成名,张绍刚先生在内心深处却对这一角色认可度很低
- 计算机电源多低无法使用吗,怎么确定电脑电源供电不足?
- CentOS7 防火墙开放端口配置
- Linux系统安全加固指南(万字长文)
- STC12C5A60S2单片机-双串口通信
- 【Arduino实验05 基于环境光的LED灯亮度感应控制】