- 博客(30)
- 收藏
- 关注
原创 1.springboot整合mybatis
1.创建数据库DROP TABLE IF EXISTS `movie`;CREATE TABLE `movie` ( `id` int(255) NOT NULL AUTO_INCREMENT, `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `author` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
2023-06-11 15:36:48
75
原创 3.Map
⑤如果添加的位置不为空,键不重复,会先以链表的形式添加,当链表长度大于8并且数组长度大于等于64,换转化为红黑树。JDK1.8开始:新元素直接挂在老元素下面,当链表长度大于8且数组长度大于等于64时,链表会转化为红黑树。JDK1.8之前:①创建一个默认长度为16的,加载因子为0.75的数组table。③如果达到了扩容条件,底层会扩容为原来的两倍,把数据全部转移到新的哈希表中。①第一次添加时,底层会创建一个默认长度为16,加载因子为0.75的数组。④如果添加的位置不为空,键重复,会将老元素覆盖。
2023-06-01 08:35:09
65
原创 2.Set
当从HashSet中获取元素时,Java会先根据元素的哈希值找到对应的桶位置,然后遍历该桶中的链表,查找是否包含要获取的元素。由于哈希表是无序的,因此链表中的元素顺序可能是随机的。JDK1.8开始:新元素直接挂在老元素下面,当链表长度大于8且数组长度大于等于64时,链表会转化为红黑树。②根据元素的哈希值跟数组的长度计算出存入的位置(int index=(数组长度-1)&哈希值)在HashSet中,元素的存储顺序是不固定的,因此无法通过索引来快速查找元素。底层:基于红黑树的数据结构,增删改查的性能都比较好。
2023-06-01 08:31:05
73
原创 1.List
vector和ArrayList很像,底层都是数组,但是vector是线程安全的,大多数方法使用了synchronized关键字,扩容机制是两倍。5.如果添加的元素过多,超过了1.5倍的扩容,则创建的数组长度以实际长度为标准。2.利用空参构造的集合,在底层创建一个默认长度为0的数组。3.添加第一个元素是,底层会创建一个新的长度为10的数组。特点:底层的数据结构是双向链表,查询修改慢,增加删除快。特点:底层是数组,查询修改快,增加删除慢。4.当超过容量时,会扩容为原来的1.5倍。
2023-06-01 08:25:45
88
原创 3.插入排序
红色代表有序索引,前两个元素为有序,后面的元素为无序的,将无序的第一个索引依次从有序的最后一个索引往前比较,找个合适的位置,进行插入。遍历无序的数据,将遍历到的元素插入有序序列中适当的位置,如果遇到相同的数据,则插入到后面。将0索引的元素到N索引的元素看作是有序的,把N+1索引的元素到最后一个当成是无序的。
2023-05-20 14:08:29
59
原创 6.宝石与石头
给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头。stones 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。字母区分大小写,因此 "a" 和 "A" 是不同类型的石头。
2023-04-30 21:37:06
100
原创 5.第一个错误的版本
你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量减少对调用 API 的次数。你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。
2023-04-28 21:32:56
74
原创 4. 在排序数组中查找元素的第一个和最后一个位置
给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。如果数组中不存在目标值 target,返回 [-1, -1]。
2023-04-28 14:55:42
139
原创 2.二分查找
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
2023-04-28 13:55:12
53
原创 1.只出现一次的数字
这道题是要找到一个数组中的只出现一次的,那么我们可以定义一个变量0,对数组进行遍历,然后对其依次进行异或运算 ,如果数组中有出现两次的数,那么异或结果必为0,最后异或出的结果就是出现一次的数。
2023-02-20 22:27:34
164
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人