ICode9

精准搜索请尝试: 精确搜索
  • LeetCode 0030 Substring with Concatenation of All Words2022-03-20 22:05:33

    原题传送门 1. 题目描述 2. Solution 1 1、思路分析 因为words里每个单词的长度oneWord都一样,所以总长度为 allLen = oneWord * words.length()固定,遍历s,每次截取s[i, i+allLen]的子串,统计words各字符出现次数,若次数与实际出现次数一致,保存i。 2、代码实现 package Q0099.Q0030Su

  • 【无标题】2022-03-20 20:02:32

    [算法] 剑指offer2 golang 0和1个数相同的子数组 题目1: 思路1: 暴力 //思路1: 暴力 //将0当作-1看待, //固定一个,计算后面的位数是否总和位0,计算最大的个数, //O(n3),优化下计算时间复杂度O(n2) 代码1 func findMaxLength(nums []int) int { //返回最长的子数组的长

  • CommonCollections6链分析2022-03-20 13:00:41

    前言 ​ 本文参考b站白日梦组长仅做笔记记录,完全跟着他复现,大家可以参考他的视频学习。 Gadget分析 因为只看了cc1可以说cc6利用的是cc1的前半部分,一直到LazyMap.decorate Transformer[] transformers = new Transformer[]{ new ConstantTransformer

  • ConcurrentHashMap 的底层结构与演进过程2022-03-20 10:02:33

    一 JDK 中的 ConcurrentHashMap 在 JDK 8以前,HashMap 是基于数组 + 链表来实现的。整体上看,HashMap 是一个数组,但每个数组元素又是一张链表。 当向 HashMap 中增加元素时,会先根据此元素 key 的 hash 值计算出该元素将保存在数组中的下标。如果多个元素计算出的下

  • HashMap的put方法具体流程2022-03-19 21:35:59

    HashMap的put方法的具体流程 对外暴露的put方法 /** * 对外暴露的put方法 **/ public V put(K key, V value) { return putVal(hash(key), key, value, false, true); } putVal方法 final V putVal(int hash, K key, V value, boolean onlyIfAbsent,boolean evict) {

  • Java集合夺命十连问?2022-03-19 20:04:30

    Java集合夺命十连问? 文章目录 Java集合夺命十连问?1、引出集合,常见的集合有哪些?2、线程安全的集合有哪些?3、ArrayList与LinkedList异同点?5、ArrayList的扩容机制?6、HashMap的底层数据结构是什么?7、为了解决哈希冲突,不直接使用红黑树?而选择先用链表,再转红黑树?8、HashMap的put

  • PHP如何实现类似java中hashset,hashmap2022-03-19 13:31:37

    php常用的数据类型 数组是只能以整型或字符串类型作为key,value可以是任意类型的数据,但是如何在php里面使用类似java中的hashset、hashmap结构或python中的字典dict,set结构,来存储以对象等其他非字符串整型为key的数据;这就要用到php的扩展spl,里面有个SplObjectStorage,它可以

  • HashMap14问2022-03-18 18:58:58

    1. HashMap的底层数据结构是什么 在JDK1.7中和JDK1.8中有所区别: 在JDK1.7中,由”数组+链表“组成,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的。 在JDK1.8中,有“数组+链表+红黑树”组成。当链表过长,则会严重影响HashMap的性能,红黑树搜索时间复杂度是O(logn),而链

  • 双列集合Map接口 & Collections工具类2022-03-18 18:34:36

       HashMap          常用方法        遍历方式 iterator迭代器  ITIT        HashTable 继承字典    Hashtable--Properties 文件读写        总结   Collections工具类          

  • Java中关于HashMap的元素遍历的顺序问题2022-03-10 10:04:15

    今天在使用如下的方式遍历HashMap里面的元素时 1 for (Entry<String, String> entry : hashMap.entrySet()) { 2 MessageFormat.format("{0}={1}",entry.getKey(),entry.getValue()); 3 }   发现得到的元素不是按照之前加入HashMap的顺序输出的,这个问题我之前倒是没有注

  • 3.罗马数字2022-03-09 20:34:09

    public class L3 { // 罗马数字包含以下七种字符:I,V,X,L,C,D和M。 // 字符 数值 // I 1 // V 5 // X 10 // L 50 // C 100 // D 500 // M 1000 // 例如

  • Collection---Map2022-03-08 14:34:04

    |-----Map:双列数据,存储key-value对的数据 -----类似于高中的函数:y= f(x) ​ |----HashMap:作为Map的主要实现类;线程不安全的,效率高;可以存储null的key和value ​ |------LinkedHashMap:保证在遍历map元素时,可以按照添加的顺序实现遍历 ​ 原因:在原有的HashM

  • HashMap 源码分析2022-03-07 20:34:08

    每当你想要努力一把的时候,都是未来的你在求救!!! 1. 概述 HashMap 是我们开发中很常用的一个键值对集合。底层基于散列算法实现,HashMap 允许 Null 值和 Null 键,并且键不能重复(重复会被覆盖),计算键的 Hash 值时 Null 键的哈希值是 0。另外,HashMap 不保证插入顺序,并且 HashMap 是非线程

  • 《破碎的残阳,我们逆光》连载小说- HashMap剖析2022-03-06 13:00:12

    破碎的残阳,我们逆光【连载小说】- HashMap剖析   “行到水穷处,坐看云起时”                        前言:   偶尔翻阅了自己当时高中时代写的日志,发现了几篇自己多年未打开的自写小说草本,小说的名字叫做《破碎的残阳,我们逆光》,可能这是那个懵懂的年纪

  • HashMap知识点梳理、常见面试题和源码分析2022-03-06 08:31:50

      本博客是HashMap相关知识点博文链接的入口,从介绍HashMap的基本概念开始,到HashMap的应用、实现原理和常见面试题,包括分析其源码。 哈希表HashMap和哈希函数介绍 HashMap之装载因子 解决哈希冲突的常用方法之开放寻址法 哈希函数的常用构造方法 HashMap的数据结构和源

  • HashMap在jdk7和jdk8中的实现原理2022-03-05 19:04:58

    HashMap在jdk7中实现原理:   HashMap map = new HashMap<>();      1.在实例化以后,底层创建了一个长度为16的一维数组Entry[] table    2. 在可能执行多次put后 map.put(key1,value1)   首先,调用key1所在类的hashcode()计算出key1的哈希值,此哈希值经过某种算法计算后,得

  • HashMap集合2022-03-05 12:01:13

    Map接口实现类之一:HashMap集合 1. 底层是哈希表/散列表的数据结构 哈希表:是一个一维数组,这个数组中的每一个元素是一个单向链表(是数组和单向链表的结合体) /*源代码: * public class HashMap<K,V>{ * //1. HashMap的底层是一个一维数组 * transient Node<K,V>[]

  • JDK源码util包分析——HashMap源码(6)2022-03-03 11:30:24

    HashMap源码分析 HashMap的结构图 HashMap原理介绍 数组:采用一段连续的存储单元来存储数据。对于指定下标的查找,时间复杂度为O(1);通过给定值进行查找,需要遍历数组,逐一比对给定关键字和数组元素,时间复杂度为O(n),当然,对于有序数组,则可采用二分查找,插值查找,斐波那契查找等方式,

  • json转换遇到的问题2022-03-02 23:03:35

    问题: Stirng数据放入map中,再取出来是一个object,转换成String后,使用jsonObject.parseObject(),转换报了异常:com.alibaba.fastjson.JSONException: syntax error, expect {, actual string, pos 83, line 1, 解决方案: 使用object.toString();来转换成String,不要使用JSONObject.toJS

  • 阿里Java开发一面面经2022-03-02 18:58:31

    时长80min 1、介绍实习项目,做了哪些?难点在哪? 2、介绍简历的项目,遇到了哪些问题?平时都是怎么解决问题的? 3、抽象类和接口的区别 4、值传递和引用传递?深拷贝 浅拷贝? 5、讲讲常见的集合类 6、讲讲hashmap,concurrenthashmap底层实现,put流程 7、hashmap数组长度为什么是2的幂次方

  • 【数据结构】HashMap 面试题8问2022-03-02 12:02:42

       面试题8问: 1. 如果new HashMap(19),bucket数组有多大? 2. HashMap什么时候开辟bucket数组占用内存? 3. HashMap何时扩容? 4. 当两个对象的hashcode相同时会发生什么? 5. 如果两个键的hashcode相同,要如何取值对象? 6. 你了解重新调整HashMap大小存在什么问题吗? 7. HashMap中的hash

  • 集合常用方法2022-03-01 21:00:47

    HashMap 重复字符 //哈希表中存放字母及其重复个数 Map<Character, Integer> table = new HashMap<Character, Integer>(); for (int i = 0; i < s.length(); i++) { char ch = s.charAt(i); table.put(ch, table.getOrDefault(ch, 0) + 1);

  • 字节跳动 抖音直播支付 java实习面经2022-03-01 20:03:14

    一面: 1.自我介绍 2.项目 3.hashmap原理,扩容,hashmap怎么缩容 4.hashtable hashmap synchronizedmap concurrentmap 5.代理模式 6.快排归并,区别,手撕时间复杂度推导 7.思维题 两个人轮流扔硬币,谁先扔正面谁赢,求先抛的人赢得概率 8.算法题 排列组合 二面: 1.自我介绍 2.项目 3

  • 【数据结构】HashMap 面试题8问2022-02-28 20:03:40

    面试题8问: 1. 如果new HashMap(19),bucket数组有多大?2. HashMap什么时候开辟bucket数组占用内存?3. HashMap何时扩容?4. 当两个对象的hashcode相同时会发生什么?5. 如果两个键的hashcode相同,要如何取值对象?6. 你了解重新调整HashMap大小存在什么问题吗?7. HashMap中的hash函数作

  • HashMap和Hashtable的区别2022-02-28 19:34:30

    (1)线程是否安全: HashMap 是非线程安全的,HashTable 是线程安全的,因为HashTable 内部的方法基本都经过synchronized修饰。(如果你要保证线程安全的话使用ConcurrentHashMap比较好)。   2)对 Null key 和 Null value 的支持: HashMap可以存储 null 的 key 和 value,但null 作为键只能有一

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有