自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

转载 什么是 MySQL 的 回表 ?怎么减少回表的次数?

文章对于mysql单表应该存储多少数据的原理有很好的解释,对大家理解mysql,以及单表达到多少数据后应该考虑分库分表有很好的借鉴作用

2022-08-15 14:44:46 283 1

原创 优先队列的简单实现

优先级队列

2022-07-27 20:51:34 66

原创 0,1,2数组排序

现在有一个包含n个物体的数组,其中物体颜色为颜色为红色、白色或蓝色,请对这个数组进行排序,让相同颜色的物体相邻,颜色的顺序为红色,白色,蓝色。我们用0,1,2分别代表颜色红,白,蓝注意:本题要求你不能使用排序库函数扩展:一个非常直接的解法是两步的计数排序的算法首先:遍历一遍数组,记录0,1,2的数量,然后重写这个数组,先将0写入,再将1写入,再将2写入你能给出一个只用一步,并且能在常数级空间复杂度解决这个问题的算法吗?解题思路:(分别将0和2进行排序,等于0的排在最左边,等于2的排在最

2022-01-10 15:40:19 531

原创 letcode连续子数组得最大和(java)

max( dp[ i ] ) = getMax( max( dp[ i -1 ] ) + arr[ i ] ,arr[ i ] )dp[i]就是以数组下标为i的数做为结尾的最大子序列和public class Solutrion{ public int FindGreatestSumOfSubArray(int[] array) { //max就是上面的dp[i] int max = array[0]; //因为这个dp[i]老是变,所以比如

2021-12-27 12:01:13 197

原创 快速排序(java)

public class QuickSort { public static void quickSort(int[] arr,int low,int high){ int i,j,temp,t; if(low>high){ return; } i=low; j=high; //temp就是基准位 temp = arr[low]; whi.

2021-12-26 21:42:26 62

原创 letcode最小的K个数(java)

描述给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。数据范围:0\le k,n \le 100000≤k,n≤10000,数组中每个数的大小0 \le val \le 10000≤val≤1000要求:空间复杂度O(n)O(n),时间复杂度O(nlogn)O(nlogn)示例1输入:[4,5,1,6,2,7,3,8],4 复制返回值:...

2021-12-26 11:53:06 74

原创 letcode 二分查找-II(JAVA实现)

描述请实现有重复数字的升序数组的二分查找给定一个 元素有序的(升序)长度为n的整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的第一个出现的target,如果目标值存在返回下标,否则返回 -1数据范围:进阶:时间复杂度,空间复杂度示例1输入:[1,2,4,4,5],4复制返回值:2复制说明:从左到import java.util.*;public class Solution { /** ...

2021-12-24 21:23:00 189

原创 letcode查找字符串中的最长回文串(JAVA)

public static String longestPlalindrome(String originalStr){ String resultStr= ""; for(int i=0;i<originalStr.length();i++){ int left=i-1; int right=i+1; while (left>=0 && right<.

2021-12-24 20:13:15 1225

原创 letcode无重复字符的最长子串(java)

public static int lengthOfLongestSubstring(String s){ int start=0,end=0; int max=0; Set<Character> set=new HashSet<>();//使用set容器不重复 while (start<s.length() && end<s.length()){ if(set.con.

2021-12-24 20:10:55 55

原创 letcode两个链表生成相加链表(JAVA实现)

描述假设链表中每一个节点的值都在 0 - 9之间,那么链表整体就可以代表一个整数。给定两个这种链表,请生成代表两个整数相加值的结果链表。数据范围:0 \le n,m \le 10000000≤n,m≤1000000,链表任意值0 \le val \le 90≤val≤9要求:空间复杂度O(n)O(n),时间复杂度O(n)O(n)例如:链表 1为 9->3->7,链表 2为 6->3,最后生成新的结果链表为 1->0->0->0。...

2021-12-24 19:55:06 102

原创 letcode用两个栈实现队列(JAVA)

描述用两个栈来实现一个队列,使用n个元素来完成 n 次在队列尾部插入整数(push)和n次在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。数据范围:n\le1000n≤1000要求:存储n个元素的空间复杂度为O(n)O(n),插入与删除的时间复杂度都是O(1)O(1)import java.util.Stack;public class Solution { Stack<Integer> i...

2021-12-24 19:37:30 57

原创 letcode判断单链表是否有环(Java实现)

方法一:循环遍历节点,遍历一个便标记一个,遍历过程判断是否被标记,若已被标记则表示有环 方法说明:头指针移动,若到达之前到达过的位置则表示有环,若无环则会走到链表末端。 public class Solution { public boolean hasCycle(ListNode head) { //声明一个set存放已遍历的节点,即为标记节点(Set中不允许重复元素) Set<ListNode> se...

2021-12-24 16:35:02 42

原创 letcode 反转链表java

描述给定一个单链表的头结点pHead,长度为n,反转该链表后,返回新链表的表头。数据范围:n\leq1000n≤1000要求:空间复杂度O(1)O(1),时间复杂度O(n)O(n)。如当输入链表{1,2,3}时,经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。以上转换过程如下图所示:1,递归法首先定义Node:javapublic static class Node { public int value; public...

2021-12-24 15:36:41 320

转载 Mysql执行全过程

前言:mysql在我们的开发中基本每天都要面对的,作为开发中的数据的来源,mysql承担者存储数据和读写数据的职责。因为学习和了解mysql是至关重要的,那么当我们在客户端发起一个sql到出现详细的查询数据,这其中究竟经历了什么样的过程?mysql服务端是如何处理请求的,又是如何执行sql语句的?本篇博客将来探讨这个问题:本篇博客的目录一:mysql执行过程二:mysql执行过程中的状态三:mysql执行的顺序四:总结一:mysql执行过程mysql整体的执行过程如下图所示:.

2021-07-03 18:22:00 439

转载 ConcurrentHashMap多线程扩容原理

总结:private transient volatile int sizeCtl;多线程之间,以volatile的方式读取sizeCtl属性,来判断ConcurrentHashMap当前所处的状态。通过cas设置sizeCtl属性,告知其他线程ConcurrentHashMap的状态变更。不同状态,sizeCtl所代表的含义也有所不同:未初始化: sizeCtl = 0:表示没有指定初始容量 sizeCtl > 0:表示初始容量初始化中: sizeCtl=-1...

2021-06-22 20:50:40 653

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除