
SE
文章平均质量分 87
练习才是王道
little-peter
这个作者很懒,什么都没留下…
展开
-
IDEA调试技巧总结
Debug技巧原创 2022-08-09 06:57:05 · 717 阅读 · 0 评论 -
HashMap如何与冲突作斗争
1.哈希表1.1概念顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经过关键码的多次比较。顺序查找时间复杂度为O(N),平衡树中为树的高度,即O( log2N),搜索的效率取决于搜索过程中元素的比较次数。理想的搜索方法:可以不经过任何比较,一次直接从表中得到要搜索的元素。 如果构造一种存储结构,通过某种函数(hashFunc)使元素的存储位置与它的关键码之间能够建立一一映射的关系,那么在查找时通过该函数可以很快找到该元素。当向该结构中:插入元素根据待原创 2021-11-14 22:49:52 · 1591 阅读 · 4 评论 -
Map与Set的使用及区别详解
1.Map的使用1.1关于Map的说明Map是一个接口类,该类没有继承自Collection,该类中存储的是<K,V>结构的键值对,并且Key一定是唯一的,不能重复。1.2关于Map.Entry<K,V>的说明Map.Entry<K, V> 是Map内部实现的用来存放<key, value>键值对映射关系的内部类,该内部类中主要提供了<key, value>的获取,value的设置以及Key的比较方式注意:Map.Entry<K,V原创 2021-11-08 20:49:09 · 1074 阅读 · 1 评论 -
多个维度解析常见的排序算法及其稳定性
1.基本概念1.1排序的稳定性(重要)两个相等的数据,如果经过排序后,排序算法能保证其相对位置不发生变化,则我们称该算法是具备稳定性的排序算法。(经验)如果当前这个排序,在排序的过程中没有发生跳跃式的交换,那么我们认为这个排序是稳定的排序,比如堆排,就是不稳定的。稳定的排序也可被实现为不稳定的排序,但不稳定的则不可以变成稳定的排序。现实生活中的应用2.常用排序总览3.插入排序3.1直接插入排序-原理整个区间被分为有序区间无序区间每次选择无序区间的第一个元素,在有序区间内选择合适的原创 2021-11-01 22:33:07 · 1661 阅读 · 0 评论 -
堆(优先级队列)及TOPK问题详解
@[TOC]二叉树的顺序存储#存储方式老铁们首先声明一下,此堆非彼堆,jvm中有堆、栈等,属于存储结构,我们这里讨论的堆为数据结构。1.二叉树的顺序存储1.1存储方式使用数组保存二叉树结构,方式即将二叉树用层序遍历方式放入数组中。一般只适合表示完全二叉树,因为非完全二叉树会有空间的浪费。这种方式的主要用法就是堆的表示。1.2下标关系已知双亲(parent)的下标,则:左孩子(left)下标 = 2 * parent + 1;右孩子(right)下标 = 2 * parent + 2;原创 2021-10-22 22:58:42 · 526 阅读 · 0 评论 -
Java集合框架及常见问题
目标了解什么是集合框架了解学习集合框架的意义掌握集合框架相关接口和常见的实现类介绍Java 集合框架又被称为容器 container ,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes。接口Collection :用来存储管理一组对象 objects ,这些对象一般被成为元素 elementsSet : 元素不能重复,背后隐含着查找/搜索的语义SortedSet : 一组有序的不能重复的元素List : 线性结构Queue :原创 2021-10-13 22:39:22 · 219 阅读 · 0 评论 -
Java对象的比较
文章目录1.问题2.元素的比较2.1基本类型的比较2.2对象的比较3.对象的比较3.1重写基类的equal3.2基于Comparable接口的比较3.3基于比较器比较(Comparator接口)3.4 三种方式对比4.面试一问在面试与实际开发过程中,对象的比较一直是一个重点且比较容易混淆的点,于是今天在此总结一下。1.问题在上一篇文章中我写到了优先级队列,如果没有看点此链接,优先级队列在插入元素时有个要求:插入元素不为null或者元素之间必须能够进行比较,为了简单起见,上次我们只是插入了Integer原创 2021-10-25 21:37:21 · 154 阅读 · 0 评论 -
Java当中的关键字:this和super
文章目录thisthis介绍this是Java中的关键字,它的作用和其词义很接近,这个。它在方法内部使用,即这个方法所属对象的引用;它在构造器内部使用,表示该构造器正在初始化的对象。this可以调用类的属性、方法和构造器什么时候使用this关键字呢?当在方法内需要用到调用该方法的对象时,就用this。具体的:我们可以用this来区分属性和局部变量。比如:this.name=name;this调用对象中的属性,构造器和方法规则:在任意方法或构造器内,如果使用当...原创 2021-02-10 22:38:09 · 307 阅读 · 8 评论