摘要: 单链表反转详解 1. 获取单链表有效节点的个数 思路分析(见源码) 源码及分析 //思路分析: //简单:遍历单链表记录链表长度并返回 //获取单链表的有效节点的个数 public static int getLength(HeroNode head) { //先判断该链表是否为空 if (head 阅读全文
posted @ 2021-05-03 22:45 mx_info 阅读(176) 评论(0) 推荐(0)
摘要: Vector和ArrayList比较 1. Vector基本介绍 1. Vector底层也是一个对象数组,protected Object[] elementData 2. Vector是线程同步的,即线程安全,因为Vector类的操作方法带有synchronized关键字 3. 需要线程同步时,考 阅读全文
posted @ 2021-05-03 17:23 mx_info 阅读(53) 评论(0) 推荐(0)
摘要: ArrayList底层结构和源码分析 1 . 注意事项 1). ArrayList允许所有类型的元素加入,也可以是null,并且多个 2). ArrayList是由数组来实现数据存储的 3). ArrayList基本等同于Vector,除了ArrayList是线程不安全的,但是执行效率高,在多线程情 阅读全文
posted @ 2021-05-03 17:14 mx_info 阅读(156) 评论(0) 推荐(0)
摘要: List接口详解 1. 基本介绍 List接口是Collection接口的子接口 1.List集合类中元素有序(即添加顺序和取出顺序一致),且可重复 2.List集合中的每个元素都有其对应的顺序索引,即支持索引 3.List容器中的元素都对应一个整数性的序号记载其在容器中的位置,可以根据序号存取容器 阅读全文
posted @ 2021-05-03 16:58 mx_info 阅读(257) 评论(0) 推荐(0)
摘要: Collection接口和常用方法 Collection接口实现类的特点 collection实现子类可以存放多个元素,每个元素可以是object 有些collection的实现类,可以存放重复的元素,有些不可以 有些collection的实现类,有些是有序的(List),有些是无序的(Set) C 阅读全文
posted @ 2021-05-03 16:45 mx_info 阅读(223) 评论(0) 推荐(0)
摘要: 集合的理解和好处 使用数组保存多个数据的不足的地方分析 长度开始时必须指定,而且一旦指定,不能修改 保存的必须为同一类型的元素 使用数组进行增加或者删除元素比较麻烦 //数组扩容示意代码 Person[] pers = new Person[1]; pers[0] = new Person(); / 阅读全文
posted @ 2021-05-03 16:43 mx_info 阅读(180) 评论(0) 推荐(0)
摘要: leetCode49.字母异位词分组 题目描述 /** * 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 */ 思路分析 字母异位词,及他们所包含的每一个字符相同,但是排列顺序相同,要将这些排列顺序不同的字符串加入到同一个集合中,就要找出他们的相同点 很明显 阅读全文
posted @ 2021-05-03 09:12 mx_info 阅读(56) 评论(0) 推荐(0)