自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux常用命令

Linux常用命令

2023-03-22 15:58:31 2689

原创 JVM相关知识点

JVM相关知识点

2023-01-18 22:07:31 139

原创 Linux常用命令总结4

Linux常用命令总结4

2022-07-17 16:07:29 228

原创 Linux常用命令总结3

Linux常用命令总结3

2022-07-17 09:45:37 313

原创 Linux常用命令总结2

Linux常用命令总结2

2022-07-13 10:29:34 216

原创 JAVA代码实现字符串匹配(一)——BF、KMP

话不多说,直接进入主题:        题目描述:给定两个字符串text和pattern,请你在text字符串中找出pattern字符串出现的第一个位置(下标从0开始),如果不存在,则返回-1;        LeetCode字符串匹配的题目:https://leetcode-cn.com/problems/implement-strstr/        举个例子:字符串tex

2021-06-02 15:21:18 2095

原创 Linux常用命令(旧)

【代码】Linux常用命令。

2021-02-23 20:35:53 199 1

原创 Linux中VIM常用命令(旧)

Linux中VIM常用命令vim是Linux中常用的文本编辑工具,先看一下vim/vi在各个模式下的切换图:常用命令:(一般模式)拷贝当前行:yy,拷贝当前行向下的5行:5yy,并粘贴(输入p);(一般模式)删除当前行:dd,删除当前行向下的5行:5dd;(命令模式)在文件中查找某个单词,输入关键字,回车,输入n查找下一个;(命令模式)设置文件的行号,取消文件的行号:set nu 和 set nonu;(一般模式)编辑/etc/profile文件,使用快捷键到该文档的最末行:G,和最首行:

2021-02-23 16:21:02 233

原创 MAC下常用idea的常用快捷键整理

快捷键功能Command + /行注释Option + Command + /多行注释Option + Command + L格式化代码Command + N生成代码(constructor、getter、setter、实现接口方法等)tab缩进shift + tab反缩进Option + Command + b跳转到接口实现处(或者方法实现处)Command + i跳转接口的声明出(在@Override出使用)Comman...

2020-11-26 16:51:22 1325

原创 Spring事务的学习(三)

        上一篇写了spring框架中自定义事务管理器的xml配置和注解配置的两种方式,这篇主要说一下spring框架中自己封装的事务管理器的使用以及xml和注解两种配置方式。下面所涉及的理解均是通过b站上的学习视频所获得,链接先附上:https://www.bilibili.com/video/BV1mE411X7yp。        接下

2020-07-07 18:44:03 123

原创 Spring事务的学习(二)

上一篇主要针对在spring框架中,对自定义事务实现的一些理解,主要是通过ThreadLoca将数据库连接绑定在线程上,再使用jdk动态代理模式将自定义的事务管理器对业务层的方法进行增强,从而将事务从持久层转移到业务层。接下来,本篇文章主要讲一下在spring框架中,如何通过xml文件配置和注解的方式实现事务的控制,再次声明,是从b站的视频中学习的,只是自己在理解。附上链接:https://www.bilibili.com/video/BV1mE411X7yp话不多说,先搭建环境:首先是pom文件:&

2020-07-07 10:45:19 150

原创 Spring事务的学习(一)

最近跟着视频学习了Spring中事务的知识。谈一谈自己的理解,接下来涉及到的代码等资料均来自B站上的视频资料,只是自己在敲得过程中有一些自己的理解。有误的地方欢迎及时指出。事务最常见的应用场景就是银行转账的例子。当A账户向B账户转账过程中,代码出现了异常,导致A扣钱成功,B未接收到金额。出现这种场景的原因就是没有将整个转账的过程用同一个事务进行统一管理。首先,先准备出账户的实体类Account:package com.myself.domain;import java.io.Serializa

2020-07-02 22:55:11 184

原创 GIT常用操作整理

GIT常用操作学习最近在学习GI T版本控制工具,关于GIT的介绍就不做过多阐述,下面将自己平时经常用到的操作,进行一些整理。1.首先需要创建一个版本库: mkdir myreproistory2.将myreproistory文件夹初始化可以管理的仓库 git init3.将readme.txt文件添加到仓库 git add readme.txt4.把文件提交到仓库 git commit -m "第一次提交readme.txt文件"5.查看仓库当前的状态 g

2020-06-05 10:13:36 187

原创 JAVA代码实现平衡二叉树

平衡二叉树平衡二叉树又叫AVL树,它是在二叉排序树的基础上进行了树结构的调整,使其根节点的左右子树的高度差一致。可以保证查询效率更加高效。平衡二叉树涉及到左旋转、右旋转和双旋转,接下来分别用图解分析一下:左旋转右旋转双旋转代码如下:package com.avl;/* * 平衡二叉树: * 1.左旋转 * 2.右旋转 * 3.双旋转 */public class...

2020-03-22 11:54:38 1222 2

原创 JAVA代码实现二叉排序树的创建和删除

二叉排序树的创建和删除最近学习了二叉树的创建和删除功能,本文代码主要实现以下功能:给定一个数列,创建二叉排序树(BST)遍历二叉排序树(中序遍历)删除二叉排序树的节点其中,二叉排序树的删除节点步骤较为繁琐,思路总结如下:一.如果要删除的节点是叶子节点1.找到要删除节点:targetNode;2.找到要删除节点的父节点:parent;3.判断要删除的节点是其父节点的左子节点还...

2020-03-21 15:28:37 248

原创 JAVA代码创建哈夫曼树

哈夫曼树最近学习了数据结构中哈夫曼树的知识。先来看哈夫曼树的定义:给定n个权值作为叶子节点,构造一棵二叉树,如果该树的带权路径长度(WPL)达到最小,则称这样的二叉树为最优二叉树,也称为哈夫曼树。得明确几个重要的概念:路径和路径长度:在一棵树中,从一个节点往下可以达到的孩子或孙子节点之间的通路,称为路径。通路中分支的数目称为路径长度。若规定根节点的层数为1,则从根节点到第L层节点的路径长...

2020-03-15 16:23:13 293

原创 JAVA代码实现堆排序

堆排序最近学习了堆排序算法。堆排序是一种选择排序,是不稳定的排序,其最坏、平均、最优时间复杂度都为O(nlogn)。堆排序逻辑上是利用完全二叉树对数进行移动,实际是对数组进行操作。堆排序算法的基本思路:根据升序或降序将数组逻辑上转换成大顶堆或小顶堆;将根节点的数和最后的数交换位置,“沉”在数组的最后,然后继续调整成大顶堆/小顶堆;反复执行步骤2,直至结束。看了上述步骤之后可能会有这...

2020-03-14 16:27:38 146

原创 JAVA代码实现前序和中序线索二叉树的

前序、中序线索化二叉树最近学习了线索二叉树的相关知识。并且用代码实现了前序和中序的线索化二叉树的构建和遍历。具体步骤已在代码中说明。后序线索化二叉树目前还在研究阶段。。。代码中如果有解释错误的地方,还望指出,定会及时改正。package com.tree.binnaryTree;public class ThreadBinnaryTreeDemo4 { public static v...

2020-03-08 20:42:25 164

原创 JAVA代码实现二叉树的前序、中序、后序遍历

二叉树的遍历二叉树的遍历分为前序、中序和后序。可以通过遍历父节点的顺序来区别。前序遍历的顺序是父节点–左子节点–右子节点;中序遍历的顺序是左子节点–父节点–右子节点;后序遍历的顺序是左子节点–右子节点–父节点。通过递归的方式可以将其实现。我主要写了以下几个方法二叉树的前序、中序和后序遍历;按节点编号顺序插入节点;根据编号前序、中序和后序查找对应的节点package com.tree....

2020-03-02 18:59:19 832

原创 JAVA代码实现哈希表

哈希表哈希表也叫散列表,是根据关键码值而直接进行访问的数据结构,通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。举例:定义一个哈希表实现员工的增删改查package com.hashTab;import java.util.Scanner;/* * 使用哈希表完成员工的增删改查 */public class ...

2020-03-01 15:34:59 310

原创 JAVA代码实现二分查找和插值查找

二分查找二分查找,顾名思义就是折半查找。前提是数组必须是有序的。每次将查找的数和数组的中间值进行比较,如果要查找的数比中间值小就左递归继续查找,如果要查找的数比中间值大,就右递归继续查找,如果要查找的数存在,最终就是反复递归后的中间值。package com.search.BinarySerach;import java.util.ArrayList;import java.util.L...

2020-02-29 15:10:03 156

原创 JAVA代码实现基数排序

基数排序基数排序是经典的拿空间换时间的排序算法。当预排数据中有重复数据时,该算法排完序后,重复数据的相对顺序仍然不变,即表明基数排序是一种稳定排序算法。其基本思想如下:第一轮按每个数的个位数的顺序,将数放入0-9的10个桶中,然后按顺序取出来放回原数组;第二轮按每个数的十位数的顺序,将数放入0-9的10个桶中,然后按顺序取出来放回原数组;依次类推。其代码步骤如下:得到数组中最大数的位数,确...

2020-02-27 15:37:12 254

原创 JAVA代码实现归并排序

归并排序归并排序用到了分治法的思想。用代码实现时,按从小到大排序为例,主要的思路分为分解和合并两大步骤:分解:第一次分解时,根据数组的头尾下标,得出分界线的位置,即:mid=(left+right)/2;向左递归分解:就是将数组的头下标和分界线的下标当做新序列的头尾下标再次分解;向右递归分解:就是将分界线的下标后一位(mid+1)和数组的尾下标当做新序列的头尾下标再次分解;分解结束后...

2020-02-27 11:44:08 158

原创 JAVA代码实现快速排序

快速排序快速排序是一种改进版的冒泡排序。针对一组数据,按从小到大排序为例。首先随机选取一个数为基准(一般选取第一个数或者中间数)然后将数据分成左右两组,左边的每个数据都比基准小,右边的每个数据都比基准大。其实现思路是:首先确定基准,然后确定左指针和右指针;右指针先往左移动,找出比基准小的数的下标;当右指针找到比基准小的数时,左指针开始向右移动,找到比基准打的数的下标;如果左指针和右指针...

2020-02-26 19:06:21 184

原创 JAVA代码实现冒泡、选择、插入、希尔排序

冒泡、选择、插入、希尔排序今天学习了八大算法中的冒泡、选择、插入、希尔排序算法。以数据从小到大排序为例,谈一谈自己的理解。有错误之处,还望指出,我会及时改正。1. 冒泡排序:冒泡排序每次将相邻元素进行比较,较大的数放在后面,每轮下来,最大的数都会被交换到最后,并且下一轮不需要进行排序了。通过双重for循环实现,平均和最差时间复杂度为O(n^2)。package com.sort.bubbl...

2020-02-25 22:07:54 156

原创 JAVA代码实现8皇后问题

8皇后问题最近在学习数据结构中的递归算法,并且使用递归思想学习了著名的8皇后问题。先谈谈自己对递归的理解吧。递归算法就是程序不断的调用自身的过程,递归的过程中,一定要注意两点:1.一定要有终止递归的条件;2.一定要不断的逼近递归的终止条件。程序每次调用自身,就会在调用处重新开辟一个栈空间,如果调用的参数是基本数据类型,那么这个栈空间会将参数作为局部变量存放,只供当前栈空间使用。如果调用的参...

2020-02-24 13:48:44 171

原创 JAVA代码实现中缀表达式转后缀表达式并求值

中缀表达式转后缀表达式并求值最近学习了利用栈实现中缀表达式转后缀表达式并求值的实现方式。目前只实现了加减乘除操作,小数部分暂时未考虑。如有错误之处,还望指出,我会及时改正。package com.stack.calulator;import java.util.ArrayList;import java.util.List;import java.util.Stack;/* * ...

2020-02-22 15:08:48 717

原创 JAVA代码实现单链表模拟栈

单链表模拟栈今天使用java实现了用单链表模拟栈的操作,有错误之处,还望指出,我会及时改正。package com.stack;import java.util.Scanner;/* * 单链表实现栈的基本操作 */public class SingleLinkedListStackDemo2 { public static void main(String[] args) ...

2020-02-20 17:18:33 945 5

原创 JAVA代码实现数组模拟栈

数组模拟栈今天用java实现了用数组模拟栈的操作,如有错误之处,还望指出,我会及时改正。package com.stack;import java.util.Scanner;public class ArrayStackDemo1 { public static void main(String[] args) { ArrayStack1 stack = new ArraySt...

2020-02-20 17:15:59 227

原创 JAVA代码实现双链表的增删改查

双链表的增删改查今天学习了双链表的增删改查操作,如果有错误的地方还望指出,我一定会及时改正。package com.LinkedList.DoubleLinkedList;/* * 双链表的增删改查 */public class DoubleLinkedListDemo2 { public static void main(String[] args) { Node node...

2020-02-20 10:39:39 241

原创 JAVA代码实现约瑟夫问题

约瑟夫问题(单向环形链表)今天学习了一下数据结构中的约瑟夫问题。谈了一下自己的解决思路,如果有错误的地方,还望指出,我一定及时改正。问题描述:有n个小孩围坐成一个圈玩游戏,每个小孩按1,2…n进行编号; 从 第k个小孩开始进行报数,数到第m个的小孩出列,然后从他的下一位继续数m个小孩,直到所有人出列,求出列的顺序。package com.LinkedList.DoubleLinkedList...

2020-02-19 17:14:38 371 1

原创 JAVA代码实现单链表的常见操作

单链表的常见操作最近在学习数据结构中单链表的常见操作,用java实现了以下几个操作:单链表的增删改查统计单链表的有效节点个数查找单链表中的倒数第k个节点单链表的反转从尾到头打印单链表合并两个有序的单链表,合并之后的链表依然有序有些地方考虑不周。有错误的地方还望指出,我会及时改正。具体的代码实现如下:package com.LinkedList.summary;impor...

2020-02-18 16:16:01 263 3

空空如也

空空如也

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

TA关注的人

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