Hash简单题

题目:https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163?tpId=295&tqId=23271&ru=/exam/oj&qru=/ta/format-top101/question-ranking&sourceUrl=%2Fexam%2Foj
图片说明
真是有点搞笑了哈哈哈哈,这么简单的题目也要想半天了,思路也是用map一个一个累加,但是担心数组太长超时,还是去看了题解有没有更好的办法,但是题解也是用map解决这个问题,哈哈哈但是发现了一个更快捷的问题,一根管有一条蛇,如果蛇比管的一般长,那么切中间,一定会切到蛇。

方法一
import java.util.*;
public class Solution {
    public int MoreThanHalfNum_Solution(int [] array) {
        HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
        if(array.length == 0 || array == null) return 0;
        if(array.length == 1) return array[0];
        for (int i = 0; i < array.length; i++) {
            if(!map.containsKey(array[i])){
                map.put(array[i],1);
            }else if(map.get(array[i]) < array.length / 2){
                map.put(array[i],map.get(array[i]) + 1);
            }else return array[i];
        }
        return 0;
    }
}
方法二
import java.util.*;
public class Solution {
    public int MoreThanHalfNum_Solution(int [] array) {
        Arrays.sort(array);
        return array[array.length / 2];
    }
}
全部评论
投票法了解一下
点赞 回复 分享
发布于 2022-07-19 18:31

相关推荐

04-14 13:24
已编辑
门头沟学院 Java
2.26&nbsp;腾讯hr部门一面(挂,鼠鼠第一次面试,紧张到发抖)1.&nbsp;completableFuture怎么用的?2.&nbsp;&nbsp;现在有个长链接转换为短链接的项目,如果有百亿级别的访问量,应该怎么设置存储系统3.&nbsp;ThreadLocal的底层原理是什么?怎么保证安全性&nbsp;&nbsp;&nbsp;&nbsp;4.&nbsp;怎么保证缓存与DB的一致性5.&nbsp;延迟双删,如果在删除数据库的时候,另外来了一个操作将数据库的数据写入了缓存进行读,这时候也读到了脏数据,怎么处理?6.&nbsp;redis中的hash结构,如果出现大Key的情况,怎么处理?7.&nbsp;哪里用到了跳表(Skip&nbsp;List),用来优化了什么8.&nbsp;http&nbsp;与&nbsp;https的区别,http1.1&nbsp;与&nbsp;http2.0区别,https一定安全吗?9.&nbsp;&nbsp;在一个&nbsp;@Transactional&nbsp;方法中嵌套另一个&nbsp;@Transactional&nbsp;方法,可能会导致事务的&nbsp;失效。&nbsp;&nbsp;10.&nbsp;Synchronized&nbsp;与&nbsp;ReentrantLock&nbsp;有什么区别?算法:找到[4,3,2,1,7,3,8,2]&nbsp;中的重复数字,不适用任何额外空间&nbsp;输出[2,3]#牛客AI配图神器#3.6腾讯暑期实习一面-(csig)1.redis缓存一致性2.限流的实现原理3.分布式限流怎么实现4.反射怎么实现5.OOM怎么排查6.jvm内存区域,堆区域的垃圾回收过程7.ai时代,怎么做才能不被取代8.怎么处理同事关系算法:&nbsp;LC&nbsp;无重复字符的最长字串3.12腾讯暑期实习二面-(csig)&nbsp;--挂算法1:深拷贝一个对象算法2:两个有序链表的合并1.项目实现讲解2.做项目中有什么难点,怎么解决的3.实习中碰到困难如何处理4.项目中有没有安全方面的工作?限流,问:限流的key是什么&nbsp;userId,追问:一个攻击者,用很多个不同的userId进行攻击,怎么防御?(对ip进行限流???)5.用了哪些ai工具来提升开发效率?6.SYN&nbsp;Flood是什么?预防措施?#暑期实习后端##腾讯求职进展汇总#
查看24道真题和解析 腾讯求职进展汇总
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务