题目描述

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。

我的做法是先用一个map<k,v>分别记录元素和元素出现的个数,然后遍历map,找到出现次数大于数组长度的一半的元素。

import java.util.*;
public class Solution {public int MoreThanHalfNum_Solution(int [] array) {int flag = 0;if(array.length == 0){return flag;}Map<Integer,Integer> map = new HashMap<Integer,Integer>();int length = array.length;for(int i=0;i< length;i++){if(map.containsKey(array[i])){map.replace(array[i],map.get(array[i]) + 1);}else{map.put(array[i],1);}}for(Map.Entry entry:map.entrySet()){int k = Integer.valueOf(entry.getKey().toString());int v = Integer.valueOf(entry.getValue().toString());if(v > Double.valueOf(array.length*0.5)){flag = k;}}return flag;}
}

剑指offer 二叉搜索树的后序遍历相关推荐

  1. [剑指offer]二叉搜索树的后序遍历数列

    [剑指offer]二叉搜索树的后序遍历数列 剑指offer-二叉搜索树的后序遍历序列 题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果.如果是则返回 true,否则返回 fals ...

  2. C#刷剑指Offer | 二叉搜索树的后序遍历序列

    [C#刷题]| 作者 / Edison Zhou 这是EdisonTalk的第289篇原创内容 我们来用之前学到的数据结构知识来刷<剑指Offer>的一些核心题目(精选了其中30+道题目) ...

  3. [剑指offer] 二叉搜索树的后序遍历序列

    二叉搜索树的后序遍历序列 P157 题目:输入一个数组,判断这个数组是不是一个二叉搜索树的后序遍历的结果. solution:我们知道后序遍历序列的最后一个item是根节点,如果确实是二叉搜索树的后序 ...

  4. 剑指offer——二叉搜索树的后序遍历序列

    二叉搜索树的后序遍历序列 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 这里遇到的问题就是,传递的子数组怎 ...

  5. 剑指Offer - 九度1367 - 二叉搜索树的后序遍历序列

    剑指Offer - 九度1367 - 二叉搜索树的后序遍历序列2013-11-23 03:16 题目描述: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出 ...

  6. 【LeetCode】剑指 Offer 33. 二叉搜索树的后序遍历序列

    [LeetCode]剑指 Offer 33. 二叉搜索树的后序遍历序列 文章目录 [LeetCode]剑指 Offer 33. 二叉搜索树的后序遍历序列 package offer;public cl ...

  7. 剑指offer——面试题24:二叉搜索树的后序遍历序列

    剑指offer--面试题24:二叉搜索树的后序遍历序列 Solution1: 二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二 ...

  8. 剑指offer之二叉搜索树的后序遍历序列

    剑指offer之二叉搜索树的后序遍历序列 欢迎关注作者博客 简书传送门 题目 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个 ...

  9. 剑指 Offer 33. 二叉搜索树的后序遍历序列

    剑指 Offer 33. 二叉搜索树的后序遍历序列 原始题目链接:https://leetcode-cn.com/problems/er-cha-sou-suo-shu-de-hou-xu-bian- ...

最新文章

  1. Tomcat启动项目时内存溢出问题如何解决
  2. 聚类算法 sklearn k_means (返回一维数据的最优聚类)
  3. {网络编程}和{多线程}应用:基于TCP协议【实现多个客户端发送文件给一个服务器端】--练习
  4. 【Windows 10 应用开发】使用快捷访问键
  5. python并发编程之多线程
  6. 一种用javascript实现的比较兼容的回到顶部demo + 阻止事件冒泡
  7. .net byte转java byte_CVE20200688的武器化与.net反序列化漏洞那些事
  8. c语言程序位置式pid算法,位置式PID算法的C语言代码
  9. axure删除的页面怎么恢复_Axure高保真还原Web首页布局和交互教程
  10. 淘宝分布式配置管理服务Diamond
  11. Scrapy实践:爬取斗鱼TV主播的头像(重写ImagesPipeline实现图片爬取)
  12. 2019山东省赛总结
  13. 计算机科技英语写作,英语科技写作
  14. 智能商场管理系统(可当做毕设)
  15. SEO优化 关键词部署策略
  16. JS特效一:图片轮播图(JS必须掌握的特效)
  17. 团队项目(2.1) -- 飞机躲避小游戏
  18. ue4+html5动态加载pak,UE4 pak生成和加载
  19. HTTP的SSL 证书安装
  20. 华为设备配置Smart Link负载分担

热门文章

  1. 44行代码AC_卡片换位(DFS变形题 视频讲解 )
  2. 天平应什么放置_天平是否应该放干燥剂?
  3. 认识5G——解开5G的神秘面纱
  4. rsync+inotify远程同步
  5. C语言面试题分享(5)
  6. java与c/c++进行socket通信的一些问题
  7. 如何判断Socket连接失效
  8. html正则表达式的书写,前端正则表达式书写及常用的方法
  9. python开发测试岗_作为测试开发岗的面试官,我都是怎么选人的?
  10. vue 生命周期_深入理解Vue实例生命周期