自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java后端 校验姓名[带生僻字]、身份证证件号和统一社会信用代码

可以通过身份证真伪查询进行查看具体实现代码/*** 开始处理最后一位是否合规* 将前17位数字分别乘以对应的权重因子,从左到右依次为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};* 将乘积的结果相加。* 将相加结果除以11,得到余数。* 根据余数查表得到对应的校验码。*///加权因子//校验码int sum=0;//加权和i

2023-11-06 16:18:07 1787

原创 java实现插值查找

插值查找介绍插值查找算法类似于二分查找,不同的是插值查找每次从自适应mid处开始查找。插值查找是对二分查找的一种改进,适用于均匀分布的有序表。将折半查找中的求mid索引的公式进行改写low:左边索引。high:右边索引。key:要查找的值。举例说明假设数组arr=[1,2,3,…,100] 此时我们需要查找的是100;1、使用二分查找:需要递归多次,才能找到100。2、使用插值查找算法:int mid=low+(high-low)*(key-arr[low])/(arr[r

2021-10-24 21:21:44 315

原创 java实现杨辉三角

规律第n行有n个数字.每一行的开始和结尾数字都为1,用二维数组表示就是a[i][0]=1; a[i][j]=1(当i==j时);第n+1行的第i个数字等于第n行的i-1个数字加上第n行的i个数字,用二维数组表示就是 a[i][j]=a[i-1][j-1]+a[i-1][j];实现思路:使用一个二维数组,完成规律一;初始化赋值开始和结尾的数据,完成规律二;使用 a[i][j]=a[i-1][j-1]+a[i-1][j] 实现中间值赋值,规律三;使用循环,非零输出显示,进行选择形状打印显

2021-09-27 22:30:27 710

原创 java实现二分查找算法

二分查找无重复数据的有序数组数组如下:{1,8,10,20,30,43,100}有重复数据的有序数组数组如下:{1,8,10,20,30,43,43,43,67,78,100}

2021-08-31 20:40:01 204

原创 mysql中使用 limit 和 limit offset的区别

SELECT语句中使用LIMIT 子句来约束结果集中的行数。LIMIT子句接受一个或两个参数。两个参数的值必须为零或正整数。下面将以bookinfo表为例:bookinfo表如下:使用select * from bookinfo;查看首先,我们看看使用 LIMITselect * from bookinfo limit 2;结果如下: 从数据中的第一个开始读取2条数据select * from bookinfo limit 2,3;结果如下: 从数据中的第2条数据(不包含) 开始

2021-08-23 11:13:59 194

原创 数据结构与算法-排序算法

数据结构与算法-排序算法1、 排序算法的介绍2、排序的分类2.1 插入排序2.2 选择排序2.3 交换排序2.4 归并排序2.5 基数排序1、 排序算法的介绍排序也称排序算法(sort Algorithm),排序是将一组数据,依指定的顺序进行排序的过程。2、排序的分类内部排序:指将需要处理的所有数据都加载到**内部存储器(内存)**中进行排序。外部排序:数据量过大时,无法全部加载到内存中,需要借助**外部存储(文件等)**进行排序。常见的排序算法分类2.1 插入排序2.

2021-08-22 16:58:27 164

原创 选择排序(java代码实现)

选择排序和堆排序1、选择排序2、堆排序1、选择排序2、堆排序

2021-08-18 21:08:41 2105

原创 快速排序(java代码实现)

1、快速排序1.1 介绍快速排序(quicksort) 是对冒泡排序的一种改进。基本思想: 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据都要小,然后再按次此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。图解:gif图解:1.2 代码实现...

2021-08-17 19:30:45 712

原创 归并排序(java实现)

归并排序

2021-08-15 21:14:53 143

原创 插入排序和希尔排序(java代码实现)

插入排序和希尔排序1、插入排序2、希尔排序1、插入排序2、希尔排序

2021-08-12 22:05:34 158

原创 冒泡排序(java代码实现)

冒泡排序和快速排序1、冒泡排序1.1 介绍1.2 代码实现1.2.1 基本实现1.2.2 优化2、快速排序2.1 介绍2.2 代码实现1、冒泡排序1.1 介绍1.2 代码实现1.2.1 基本实现1.2.2 优化2、快速排序2.1 介绍2.2 代码实现...

2021-08-09 16:57:48 14884

原创 算法的时间复杂度和空间复杂度

算法的时间复杂度和空间复杂度1、时间复杂度1.1三级目录2、空间复杂度2.1 基本介绍1、时间复杂度1.1三级目录2、空间复杂度2.1 基本介绍类似于时间复杂度的讨论,一个算法的空间复杂度(space Complexity)定义为该算法所耗费的存储空间,它也是问题规模n的函数。空间复杂度(space Complexity)是对一个算法在运行过程中临时占用存储空间大小的量度。在做算法分析时,主要讨论的是时间复杂度。从用户使用体验上看,更看重的程序执行的速度。一些缓存产品和算法本质上就是用空间

2021-08-08 22:04:21 166

原创 数据结构与算法- 前缀、中缀、后缀表达式

数据结构与算法- 前缀、中缀、后缀表达式1、前缀、中缀、后缀表达式1.1 介绍1.2 转前缀表达式在计算机求值1.2.1 流程、举例1.2.2 代码实现1.3 中缀表达式转前缀表达式1.3.1 思路分析1.4 后缀表达式在计算机求值1.4.1 流程、举例1.4.2 代码实现1.5 中缀表达式转后缀表达式(常用)1.5.1 思路分析1.5.2 代码实现1、前缀、中缀、后缀表达式1.1 介绍前缀表达式 (波兰表达式): 运算符位于操作数之前,(1+2)*3-4 对应的前缀表达式为 - * + 1 2 3

2021-08-07 18:11:28 2147

原创 数据结构与算法-栈

数据结构与算法-栈栈介绍应用场景用数组模拟栈思路分析代码实现用链表模拟栈思路分析代码实现栈介绍栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一段,称为栈顶(top),另一端为固定的一端,称为栈底(bottom)。最先放入栈中的元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除。入栈push出栈

2021-08-06 22:16:50 140

原创 数据结构与算法-链表

链表1、单链表介绍1.1单链表的应用(使用带head头的单向链表实现-水浒英雄排行榜管理)1.1.1 方式一,添加到链表的尾部。1.1.2 方式二,添加到指定的位置1.1.3 修改节点的信息1.1.4 删除节点的信息1.1.5 完整代码2、双向链表1、单链表介绍链表是有序的列表,但是它在内存中存储如下:小结:链表是以节点的方式来存储,是链式存储。每一个节点包含data域,next域:指向下一个节点。链表的各个节点不一定是连续存储。链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定

2021-08-05 17:29:03 150

原创 数据结构与算法-队列

队列介绍:队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则示意图:maxSize:该队列的最大容量。front、rear:分别记录队列前后端的下标。front会随着数据输出而改变,而rear则是随着数据输入而改变一、数组实现队列二、数组实现循环队列...

2021-08-04 15:12:45 108

原创 数据结构与算法-稀疏数组

稀疏数组应用:当一个数组中大部分元素为0 ,或者为同一个值得数组时,可以使用稀疏数组来保存该数组,如图:处理步骤:记录数组一共有几行几列,有多少个不同的值。把具有不同值的元素的行列及值记录在一个规模的数组中,从而缩小程序的规模。思路:一、二维数组转稀疏数组的思路:遍历,原始的二维数组得到有效数据的个数sum。根据sum就可以创建稀疏数组sparseArr int [sum+1] [3]。将二位数组的有效数据存入到稀疏数组。二、稀疏数组转原始的二维数组的思路先读取稀疏数组的第

2021-08-02 22:06:43 109

原创 java多线程可见性

java多线程可见性1、可见性介绍1.1、可见性1.2、java内存模型JMM1.3、两条规定1.4、共享变量可见性实现的原理2、synchronized实现可见性2.1、JMM关于synchronized的两条规定2.2、线程执行互斥代码的过程2.3、了解重排序和as-if-serial2.4、可见性分析3、volatile实现可见性4、synchronized和volatile比较1、可见性介绍1.1、可见性1.2、java内存模型JMM**java内存模型( Java Memory Mode

2021-07-30 21:22:45 549

原创 Http的一次请求过程顺序

对于http一次请求的过程顺序如下:在浏览器中输入URL,并按下回车键。浏览器向DNS服务器发出域名解析请求并获得结果。根据目的IP地址和端口号,于服务器建立TCP连接。浏览器向服务器发数据请求。服务器将网页数据发送给浏览器。浏览器解析收到的数据并显示。通信完成,断开TCP连接。...

2021-06-10 12:28:40 1240

空空如也

空空如也

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

TA关注的人

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