自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 什么?你还不了解gRPC,我不允许,开始启动你的RPC服务吧(2)

gRPC

2022-06-18 10:44:51 307 1

原创 什么?你还不了解gRPC,我不允许,开始启动你的RPC服务吧(1)

Hi,我是老胡,今天我在学习grpc的时候,特此记下本博客,详尽的介绍了Go语言中最流行的RPC框架,并且展示其中的技术栈,话不多说,开造!

2022-06-17 19:42:28 655

原创 Docker Toolbox

使用说明

2020-09-15 20:22:08 286

原创 pyspider all命令报错如下:ImportError: cannot import name ‘DispatcherMiddleware‘ from ‘werkzeug.wsgi‘

解决办法

2020-09-15 20:21:21 727

原创 pyspider的下载安装

pyspider的下载安装

2020-09-15 20:20:31 318

原创 剑指leetcode—面试题 04.03. 特定深度节点链表

题目描述:给定一棵二叉树,设计一个算法,创建含有某一深度上所有节点的链表(比如,若一棵树的深度为 D,则会创建出 D个链表)。返回一个包含所有深度的链表的数组。方法一层序遍历法...

2020-09-11 11:34:05 111

原创 剑指leetcode—平衡二叉树

题目描述:给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。解法一自顶向下遍历检查/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x.

2020-09-11 10:57:10 154

原创 剑指leetcode—N叉树的前序遍历

题目描述:给定一个 N 叉树,返回其节点值的前序遍历。例如,给定一个 3叉树 :树的遍历有着四种遍历方式先序遍历后序遍历中序遍历层次遍历这里的要求是使用先序遍历,同时要求使用迭代法,递归法的思想很简单递归法给出递归法的算法思想void preorder(node * b){ if(b!=null) { printf("%d",b->data); preorder(b->lchild); preorder(b->rchile); }} .

2020-09-01 16:24:07 143

原创 数据结构—树与二叉树

文章目录树的定义树的基本术语树的性质二叉树的概念与性质满二叉树完全二叉树二叉树的存储结构二叉树的顺序存储二叉树的链式存储结构树的定义树是由n个结点组成的有限集合,如果n=0,它是一棵空树,如果n>0,这n个结点中有且只有一个结点作为树的根节点,其余结点分为m个互不相交的有点集,每个子集本身也是一颗符合定义的树,称为根节点的子树。简而言之,树是由规模更小的树组成的,用于表示层次关系的数据。树的基本术语1. 结点的度和树的度树中某个结点的子树的个数称为该结点的度,树中所有结点的度中的最大值称为树

2020-09-01 14:49:28 217

原创 搞定Redis的安装以及配置,Redis基本的数据结构

目录1.Redis数据库简介2.Redis主要特点3. Redis数据库的安装以及配置4. Redis的四种基本的数据结构4.1 string字符串4.2 list列表4.3 hash哈希4.4 set集合4.5 sortedset有序集合5. 容器型数据结构6. 过期时间1.Redis数据库简介Redis是一个非常快速的、开源的、使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、非关系类型的、Key-Value数据库,并提供多种语言的API。Redis 是一个高性能的key-

2020-07-01 21:35:00 280

原创 从头开始学习MySQL数据库你要了解的Mysql命令行实用程序集合

目录1. Mysql服务器端实用工具程序2.Mysql客户端实用工具程序1. Mysql服务器端实用工具程序mysqld:SQL后台程序(Mysql服务器进程),该程序必须运行之后,客户端才可以通过连接服务器来访问数据库。mysqld_safe:服务器启动脚本,比mysqld来说增加了安全特性,例如当出现错误时,重启服务器并向错误日志文件写入运行时间信息。mysql.server:服务器启动脚本,该脚本用于使用包含为特定级别的,运行启动服务的脚本的,运行目录的系统,它调用mysqld_safe来启

2020-07-01 12:31:31 220

原创 Tomcat启动错误:Several ports (8080, 8009) required by Tomcat v7.0 Server at localhost are already in use

根据上方的英文很容易可以看出是因为端口号被占用了接下来我们来看看tomcat服务器的需要的端口号接下来我们就去看看到底是谁占用了端口号可以看出是PID为20912的进程占用了端口,然后进入任务管理器中寻找PID为20912的进程,就是占用了端口号8080的进程右键结束该进程,然后去ecplise中就可以运行tomcat服务器啦...

2020-06-22 17:14:02 1882

原创 spring-boot-starter-test单元测试引入SpringRunner失败问题

直接上链接戳这里

2020-06-22 16:20:54 926

原创 一张图教你如何解决ecplise中错误:-Dmaven.multiModuleProjectDirectory system property is not set.

添加 -Dmaven.multiModuleProjectDirectory=$MAVEN_HOME有些人在配置maven时,是使用的是M2_HOME定义所以这里需要修改为$M2_HOME

2020-06-22 12:22:47 265

原创 一把心酸泪的写下Maven的配置以及第一个Maven项目

目录1.Maven官方解释2.maven(JDK)环境配置2.1. 证明你搞定了截图如下3. maven的下载4. 接下来是我第一次使用cmd创建maven项目的过程4.1. 打开文件4.2. 打开setting.xml文件4.3. 进入cmd命令行,进入项目目录,输入mvn archetype:generate4.4. 使用CMD命令行生成站点信息4.5. 生成 API Doc 文档1.Maven官方解释Maven 翻译为"专家"、“内行”,是 Apache 下的一个纯 Java 开发的开源项目。

2020-06-22 12:14:49 233

原创 Error:Error injecting: org.apache.maven.report.projectinfo.CiManagementReport java.lang.NoClassDefFo

错误描述[INFO] Scanning for projects...[INFO][INFO] ---------------------< com.mengma.demo:HelloWorld >---------------------[INFO] Building HelloWorld 1.0-SNAPSHOT[INFO] --------------------------------[ jar ]---------------------------------[INFO]

2020-06-21 19:00:06 5802

原创 教你学会SSM框架第十一步,菜鸟入门级别的Spring MVC

目录11.1 Spring MVC概述11.2 第一个SpringMVC应用11.2.1 创建一个项目,引入jar包11.2.2 配置前端控制器11.3 Spring MVC的注解11.3.1 DispatcherServlet11.3.2 Controller注解类型11.3.3 RequestMapping注解类型11.1 Spring MVC概述Spring MVC是Spring提供的一个轻量级Web框架,它实现了Web MVC设计模式。Spring MVC具有如下特点是Spring框架的一

2020-06-16 11:33:56 533

原创 教你学会SSM框架第十步,MyBatis和Spring的整合开发

目录10.1 整合环境搭建10.1.1 准备的jar包10.1.2 编写配置文件10.2 整合10.2.1 传统DAO方式的开发整合10.1 整合环境搭建MyBatis和Spring的整合开发环境主要涉及的jar包和编写的配置文件10.1.1 准备的jar包Spring框架所需的jar包Spring框架所需要准备的JAR包共10个,其中包括4个核心模块JAR、AOP开发使用的JAR、JDBC和事务的JAR(其中核心容器依赖的commons-logging的JAR在MyBatis框架的lib包中已

2020-06-16 09:39:53 238

原创 教你学会SSM框架第八步,动态SQL的使用

目录前言8.1 < if>元素8.2 < choose> < when> < otherwise>元素8.3 < where> < trim>元素8.4 < set>元素8.5 < foreach>元素8.6 < bind>元素前言MyBatis提供对SQL语句动态组装的功能,可以解决在使用JDBC或者框架进行数据库开发时手动拼装SQL这一工作8.1 < if>元素该元素是常用的判

2020-06-15 13:42:47 546

原创 教你学会SSM框架第七步,详解MyBatis核心配置

目录7.1 MyBatis的核心对象7.1.1 SqlSessionFactory7.1.2 SqlSession7.2 MyBatis配置文件元素7.2.1 < properties>元素示例1配置数据库的连接属性步骤01步骤02步骤037.2.2 < settings>元素7.2.3 < typeAliases>元素7.2.4 < typeHandle>元素7.2.5 < objectFactory>元素7.2.6 < plugins&g

2020-06-15 12:40:17 422

原创 教你学会SSM框架第六步,入门级别的MyBatis讲解

目录6.1 MyBatis概述6.1.1 什么是MyBatis?常见的ORM框架:1. Hibernate2. MyBatis6.1.2 MyBatis的下载和使用MyBatis框架的大致操作6.1 MyBatis概述MyBatis是一个支持普通SQL查询,存储过程以及高级映射的持久框架消除了所有JDBC代码和参数的手动设置以及对结果集的检索,使用简单的XML或者注解进行配置和原始映射,用以将接口和java的对象映射成数据库中的记录,简而言之,让程序员使用面向对象的思想操作数据库6.1.1 什么是My

2020-06-15 11:56:59 232

原创 教你学会SSM框架第五步,关于Spring的基础事务管理

目录5.1 Spring事务管理概述5.1.1 事务管理的核心接口1. PlatformTransactionManager2. TransactionDefinition3. TransactionStatus5.1.2 事务管理的方式5.2 声明式事务管理5.2.1 基于XML方式的声明式事务5.2.2 基于Annotation方式的声明式事务5.1 Spring事务管理概述Spring事务管理简化了传统的事务管理流程,减少了开发量5.1.1 事务管理的核心接口在Spring的所有JAR包中包含

2020-06-15 10:35:15 182

原创 教你学会SSM框架第四步,关于Spring数据库的开发

目录4.1 Spring JDBC4.1.1 Spring JdbcTemplate的解析4.1.2 Spring JDBC的配置4.2 Spring JdbcTemplate的常用方法4.2.1 execute(String sql)—执行SQL语句示例一步骤一步骤二步骤三步骤四4.2.2 update()—更新数据4.2.3 query()—查询数据4.1 Spring JDBCSpring的JDBC模块负责数据库资源管理和错误处理,可以简化开发人员对数据库的操作。4.1.1 Spring Jdb

2020-06-15 10:00:40 192

原创 教你学会SSM框架第三步,Spring AOP(切面编程)模块

目录3.1 Spring AOP简介3.1.1 AOP(面向切面编程)3.1.2 AOP术语3.2 AspectJ开发3.2.1 基于XML的声明式AspectJ3.2.2 基于注解的声明式AspectJ3.1 Spring AOP简介Spring的AOP模块是Spring框架体系中很重要的模块,提供了面向切面编程的实现。3.1.1 AOP(面向切面编程)它也称面向方面编程,是面向对象编程(OOP)的一种补充,已成为一种比较成熟的编程方式。在传统的业务处理代码中,通常都会进行事务处理、日志记录等

2020-06-14 17:51:19 320

原创 教你学会SSM框架第二步,Spring中的Bean

2.1 Bean的配置Spring就好比一个工厂,用于生产和管理Spring容器中的Bean,如果你需要使用这个工厂,你就需要对Spring的配置文件进行配置,实际开发中,采用的XML文件格式的配置方式,通过XML文件来注册并管理Bean之间的依赖关系,下面使用XML的形式对Bean的属性和定义解析XML配置文件的根元素是< beans>,< beans>中可以有多个< bean>子元素,每一个< bean>子元素都被定义为一个Bean,并描述了该Bean

2020-06-14 16:57:58 453

原创 教你学会SSM框架第一步,重要的Spring基础

1.1 Spring概述1.1.1 什么是SpringSpring是一个以IOC(控制反转)和AOP为内核的框架,IOC是Spring的基础,IOC实现的是一种控制,简单说就是,以前调用new构造方法来创建对象,现在变成使用了Spring来,DI(依赖注入)与IOC是一样的含义,从两个角度来看,DI就是对象的属性,已经注入了值,直接使用即可。1.1.2 Spring的下载以及目录结构使用Spring框架进行开发需要使用到Spring框架包和第三方依赖包。 1. Spring框架包下载地址为S

2020-06-14 15:59:56 456

原创 剑指leetcode—相同的树

题目描述:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。这道题目很简单可以使用递归,迭代方法一:递归法对于两个树中的相同位置的节点p和q,需要进行这样的比较如果pnull而且qnull,那么这两棵树在此处位置是一样的,返回true如果p==null或者q=null,那么不一样,返回false如果p!=null而且q!=null,p.val==q.val,返回isSameTree(p.left,q.left)&.

2020-06-13 11:57:06 94

原创 剑指leetcode—删除排序数组中的重复项||

题目描述: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定 nums = [1,1,1,2,2,3],函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,1,2,3,3],函数应返回新长度 .

2020-06-13 11:17:17 166

原创 List的toArray()方法和toArray(T[] a)方法

这两个方法都是将列表List中的元素转导出为数组,区别在于toArray()方法导出的是Object类型数组toArray[T[] a]方法导出的是指定类型的数组具体请参考深入理解List的toArray()方法和toArray(T[] a)方法,写的很清楚。...

2020-06-12 11:23:56 230

原创 剑指leetcode—搜索二维矩阵

题目描述:编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。示例 1:输入:matrix = [[1, 3, 5, 7],[10, 11, 16, 20],[23, 30, 34, 50]]target = 3输出: true示例 2:输入:matrix = [[1, 3, 5, 7],[10, 11, 16, 20],[23, 30, 34,.

2020-06-11 12:05:49 109

原创 剑指leetcode—颜色分类

题目描述:给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]进阶:一个直观的解决方案是使用计数排序的两趟扫描算法。首先,迭代计算出0、1 和 2 元素的个数,然后按照0、1、2的排序,重写当前数组。你能想出一个仅使用常数.

2020-06-11 11:30:11 153

原创 剑指leetcode—矩阵置零

题目描述: 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。示例 1:输入:[[1,1,1],[1,0,1],[1,1,1]]输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2:输入:[[0,1,2,0],[3,4,5,2],[1,3,1,5]]输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]进阶:一个直接的解决方案是使用 O(mn) 的额外空间,但这并不是.

2020-06-11 10:22:54 226

原创 剑指leetcode—经典动态规划问题爬楼梯

解法目录递归法,模拟爬楼梯的这个过程,也就是暴力法记忆化递归简单动态规划斐波那契数题目描述:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1 阶 + 1 阶2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1 阶 + 1 阶 + 1 阶1 阶 + 2 阶2 阶 + 1 阶来源:力扣(L

2020-06-11 09:27:13 197

原创 小随笔—java中将列表元素转化为字符串的方法总结

java List转化为字符串的两种方法方法一常规思路public class listchangestring { public static String listchangstring1(List list,char separator) { StringBuilder sb=new StringBuilder(); for(int i=0;i<list.size();i++) { sb.append(list.get(i)).append(separator);

2020-06-10 17:31:29 482

原创 剑指leetcode—x的平方根

题目描述:实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842…,由于返回类型是整数,小数部分将被舍去。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/sqrtx著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。.

2020-06-10 16:37:59 161

原创 剑指leetcode—最小路径和

题目描述:给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例:输入:[[1,3,1],[1,5,1],[4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/minimum-path-sum著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。方法一.

2020-06-10 14:13:15 177

原创 递归,动态规划法解决不同路径||

题目描述:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用 1 和 0 来表示。说明:m 和 n 的值均不超过 100。示例 1:输入:[[0,0,0],[0,1,0],[0,0,0]]输出: 2解释:3x3 网格的正中间有一个障碍物。从左上角.

2020-06-10 12:30:33 323

原创 递归,动态规划,排列组合解决不同路径|

题目描述:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”), 问总共有多少条不同的路径?例如,上图是一个7 x 3 的网格。有多少可能的路径?示例 1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可以到达右下角。向右 -> 向右 -> 向下向右 -> 向下 -> 向右向下 -> 向.

2020-06-10 11:25:47 584

原创 剑指leetcode—旋转链表

题目描述:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->2->3->NULL示例 2:输入: 0->1->2.

2020-06-10 10:09:38 155

原创 剑指leetcode—合并区间

题目描述:给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入: [[1,4],[4,5]]输出: [[1,5]]解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/mer.

2020-06-08 15:34:47 182

空空如也

空空如也

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

TA关注的人

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