自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法复杂度分析中常用的五种渐近记号

算法复杂度分析中常用的五种渐近记号

2024-09-18 12:34:11 230

原创 Linux系统中为MySql设置主从复制

主从复制:一台或多台数据库从库(slave)从一台MySql主库(master)进行二进制日志的复制,然后再进行日志的解析并应用到自身,最终实现从库的数据库和主库的数据保持一致。

2022-10-22 23:14:40 1695 4

原创 快速排序 Java实现解析

package class03;/* 快排的治的逻辑:给定一个数,将数组按小于,等于,大于分成三个区域 所以会有小于区边界,大于区边界两个变量被定义 */public class Code03_PartitionAndQuickSort { public static void swap(int[] arr, int i, int j) { int temp = arr[i]; arr[i] = arr[j]; arr[j

2021-10-13 23:50:14 163

原创 归并排序(MergeSort) Java实现及解析

package class03;public class Code01_MergeSort { // 递归方法实现 public static void mergeSort1(int[] arr){ if(arr == null || arr.length < 2){ return; } process(arr, 0, arr.length - 1); } // 递归函数的定义:让arr在[L

2021-10-13 23:45:18 2001 4

原创 有限自动机可解析数据例题分析

因为 NFA 的状态转移可能会对应多种的转移结果,所以与确定性有限自动机不一样,在非确定性有限自动机中我们用一个集合来保存所有可能转移到的状态。有限自动机是一种非常简单但是又很重要的计算模型,我们后面提到的下推自动机和图灵机都是在有限自动机的基础上构造的,所以在查看后面的文章前请务必要先理解有限自动机这种计算模型。OK,我们已经理解了有限自动机的概念了,接下来我们聊聊有限自动机下的两个不同类型:确定性有限自动机和非确定性有限自动机。对于某一个状态,读入某一个输入的时候,可能会有多种转移规则;

2021-10-13 22:43:48 1131 2

原创 使用双向链表和数组分别实现栈和队列(Java语言实现)

一、双向链表实现栈和队列双向链表比较方便,而且思路清晰的做法是,先使用双向链表实现双向队列。双向队列可以在头部或者尾部添加或者弹出元素。随后部分调用双向队列的功能,即可实现栈或队列的功能。(栈:只能从头部添加和弹出元素,链表:只能从头部添加元素,从尾部取出元素)。// 双向链表public static class Node<T> { public T value; public Node<T> last; // 前驱指针 public Nod

2021-09-21 22:03:37 441

原创 单向链表的逆置/反转(Java实现)

一、定义链表单向链表的性质决定了,由单向链表头节点可以获取整个链表public class Node { public int value; public Node next; // 链表的第一个节点,next指针指向空内存 public Node(int i){ value = i; next = null; } /** * 向链表中添加新节点 * @param head 头节点 * @par

2021-09-17 23:08:58 371

原创 Java split(“.“)无效

public String[] split(String regex) {} /* fastpath if the regex is a (1)one-char String and this character is not one of the RegEx's meta characters ".$|()[{^?*+\\", or (2)two-char String and the first char is the backslash and the second is not the

2021-06-23 00:00:12 685

原创 爬虫爬取网页时‘\xa0‘的处理方法:UnicodeEncodeError: ‘gbk‘ codec can‘t encode character ‘\xa0‘ in position XXX

解决方式1:将内容全文替换:res.text.replace(’&nbsp’,’ ')解决方式2:内容获取后,写入文件时将编码转换为更通用的UTF-8: with open(f'{title}.txt','w') as f: f.write(f'{title}\n\n') f.write(content)改为:with open(f'{title}.txt','w',encoding='utf-8') as f: f.write(f'{title}\n

2021-06-16 00:03:39 247

原创 冒泡排序,折半查找,选择排序和插入排序Java实现及解析

一、冒泡排序通过按顺序将元素的逐个比较大小和交换形成有序的元素序列。public static void bubbleSort(int a[]){ // 外层循环控制排序趟数(核心是要控制执行n-1趟排序) for(int i = 0;i < a.length - 1;i++){ // 里层循环控制每一趟排序过程中前后相邻位置的数,比较和交换的过程 for( int j = 0;j < a.length - i -1;j++){ // j表示每一趟排序过程中待比较的下标位置,从

2021-06-15 00:32:48 1577 3

原创 python退出venv虚拟环境

退出:cd到venv/Scripts目录下执行命令:deactivate

2021-06-14 13:52:14 3005

原创 pip异常No module named ‘pip‘处理方法

一、假如环境变量正常使用命令:python -m ensurepip

2021-06-05 15:00:31 43450 3

原创 数据库的模式,内模式,外模式

一. 模式模式(逻辑模式):ER图所揭示的字段或表间的逻辑;一个数据库只有一个模式;是数据库数据在逻辑级上的视图;定义数据库的逻辑模式时不仅要定义数据的逻辑结构(如数据记录由哪些数据项构成,数据项的名字、类型、取值范围等),而且要定义与数据有关的安全性、完整性要求,定义这些数据之间的联系。二. 外模式外模式(/子模式/用户模式):用户可以操作的视图,例如具体的数据库和表; 一个数据库可以有多个外模式;三. 内模式内模式(储存模式):数据库的物理结构和储存方式,例如底层使用的数

2021-04-11 17:44:27 6955

原创 McCabe度量法——相关概念介绍及测试用例数、环路复杂度测量例题解析

McCabe度量法:McCabe度量法是由托马斯·麦克凯(Thomas McCabe)提出的一种基于程序控制流的复杂性度量方法。McCabe复杂性度量又称环路度量。它认为程序的复杂性很大程度上取决于程序图的复杂性。单一的顺序结构最为简单,循环和选择所构成的环路越多,程序就越复杂。这种方法以图论为工具,先画出程序图,然后用该图的环路数作为程序复杂性的度量值。程序图是退化的程序流程图。也就是说,把程序流程图的每一个处理符号都退化成一个结点,原来连接不同处理符号的流线变成连接不同结点的有向弧,这样得到的有向图就叫

2021-03-18 11:12:51 9536 2

原创 Eclipse在debug调试中String,JSON,XML等文本变量过长显示不全

由以下路径找到debug逐步调试中“经过”的目标变量,使变量得到赋值window – show view – Variables(或window – show view – other – Debug – Variables -_-)点击目标变量后,右键点击下方查看窗口:选择MaxLength为0,即为设置显示长度为无限。...

2021-02-18 17:09:32 1816

原创 爬虫礼仪:避免爬虫开发从入门到入狱

是否遵守爬虫礼仪,可以被看作爬虫是否为良性爬虫的一个判断标准,实际操作是一些网站会在根域名+"/robots.txt"中存放一些爬取数据的相关警告与声明,告知爬虫开发者可用的请求头,不可抓取的数据等。eg: 土耳其航空:https://www.turkishairlines.com/robots.txtUser-agent: *通配符*表示适用于所有爬虫:Disallow: / * /promotions.xmlDisallow: / * /cityguide.xml爬虫不可访问的资源Al

2021-01-19 15:09:21 845

原创 用乐观锁防止爆卖/爆买

这种情况下不用新添加version字段进原数据库表,直接利用已有的库存数字的递减进行CAS(比较和判断):update ticket_stock set ticket_stock = ticket_stock - ${orderCount} where ticket_stock - ${orderCount} > 0;每次进行删减前确定现有库存减去订单数量后会大于0,如若不满足条件修改语句就不执行。...

2020-10-23 14:20:25 138

原创 数据库单表事务:对于乐观锁,悲观锁的理解

乐观锁(CAS 比较和增加):觉得其他线程在查询时不会对数据发生修改(增加,删除,修改),需要对数据库中的每一条记录后增加一个字段:version(版本号),线程对数据进行修改前会比较自身请求所带的version和数据后的version大小,只有在版本号相同的情况下才可进行修改,如若成功进行了修改,会在版本号基础上加一。后续线程因version的不匹配,会导致无法再次进行修改,因而保证了数据安全。悲观锁(Pessimistic Lock):觉得每次修改数据时都会有别人进行修改,因而修改的时候会上锁,修改完

2020-10-22 21:37:39 177

原创 thymeleaf获取cookie缓存值

<input type="house" id="loggedUserId" th:each="cookie :${#httpServletRequest.getCookies()}" th:if="${cookie.getName().equals('userId')}" th:value="${cookie.getValue()}">需要遍历该浏览器的所有cookie以获得对应值...

2020-09-09 21:03:29 3409 6

原创 thymeleaf获取url地址跳转时所带参数

这里写自定义目录标题eg:地址为:localhost:8080/toHousedesc?houseId=2在表单元素或标签中用thymeleaf的语法进行接收<form id="addCollectForm"> <input type="text" id="houseId" th:value="${param.houseId}"></form>th:value="${param.houseId}"即可接收到跳转时所带参数记得先在页面加载thy

2020-09-09 20:59:46 2300 1

原创 Mybatis多表多条件模糊查询带分页(前端为Vue 分页使用了PageHelper)

Mybatis多表多条件模糊查询带分页-前端为Vue-分页使用了PageHelper前言1. 前端1.0 两个对应的数据库表1.1 Vue代码1.2 页面2. 后端2.1 涉及的实体类2.1.1 Performance(绩效类)2.1.2 (Employee)员工类2.2 Controller层2.3 Service及Service实现类2.3.1 Service2.3.2 Service实现类2.4 Mapper层接口及映射文件(xml)2.4.1 Mapper接口2.4.2 Mapper映射总结前言

2020-08-22 17:30:17 1112

空空如也

空空如也

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

TA关注的人

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