自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 踩坑mysql timeStamp默认值0000-00-00 00:00:00报错

报错信息:Invalid default value for ‘create_time’解决办法(Linux环境)①找到/etc/my.cnf文件②修改文件的可执行权限sudo chmod 777 my.cnf③在my.cnf[mysqld]下添加sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION ④将m

2022-03-23 14:48:09 1178

原创 解决no matching host key type found. Their offer: ssh-rsa报错信息具体方法

1. 问题描述2. 解决步骤①找到本地C:\Users\shuang.zou.ssh目录,里面如果没有config文件,那么就创建一个config文件②在config配置文件中加入一些配置Host *HostkeyAlgorithms +ssh-rsaPubkeyAcceptedKeyTypes +ssh-rsactrl+s保存即可③然后你iu可以尝试拉取代码...

2022-03-11 08:54:39 21568 12

原创 Android Stdio创建的第一个项目

安卓项目的搭建与项目结构解析项目搭建可能出现的问题以及解决方案安卓项目结构模拟器的生成项目搭建一个基本的项目就搭建好了然后我们开始正式的一个App项目搭建可能出现的问题以及解决方案点击Make Project后可能会报错(如下:)Failed to install the following Android SDK packages as some licences have not been accepted. build-tools;28.0.3 Android SDK Buil

2021-12-07 22:22:14 1932 2

原创 Android Stdio环境安装

下载之后进行相关的安装操作

2021-12-02 10:58:19 229

原创 leetcode【数组中的逆序数对】

题目描述:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007测试用例:输入:[7, 5, 6, 4]输出:5思路基于归并排序的思想实现数组中的逆序对的统计。代码如下:public class Solution { public int InversePairs(int [] array) { return

2021-08-17 12:12:51 201

原创 基于Servlet实现个人博客

个人博客核心功能数据库设计User表Article表服务器API设计注册登录新增博客删除博客修改博客数据库封装操作代码复用servlet层的具体实现注册功能登录功能新增博客功能删除功能修改博客内容功能部分功能截图展示核心功能数据库设计两张表,一位用户可以发布多篇博客。因此在Article表中使用了user_id作为外键将两张表关联起来。User表属性类型说明idintprimary key auto_increment(主键作为user的唯一表示)username

2021-08-04 11:47:00 1099

原创 Cookie和Session

Cookie和Session的原理以及区别(1)Session是会话,是保存在服务器端用于保持用户身份。主要用于解决登录的敏感资源访问的相关问题。(2)Session原理:当客户端向服务器发起请求时,服务器会先检查一下客户端请求头里是否有session_id,是否过期。如果客户端的请求头中包含session_id,那么服务器就会根据cookie对应的session_id检索出Session;如果没有session_id,那么服务器就会创建一个。如果在此期间,用户刷新页面或者重启服务器,生成的ses.

2021-08-01 21:59:30 117

原创 解决Idea连接数据库Server returns invalid timezone. Need to set ‘serverTimezone‘ property.错误

Idea连接数据库报错 Server returns invalid timezone. Need to set‘serverTimezone’property原因是MySQL驱动中默认时区是UTC,与本地时间(中国)相差八个小时,所以连接不上。解决方法1. 点击Set time zone2. 将serverTimezone字段后的UTC改为GMT保存即可...

2021-07-21 21:56:45 718

原创 终于搞懂了三次握手和四次挥手

三次握手和四次挥手在面试中是一个绕不开的热门题目。具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。不要问我是怎么知道的,问了就是被问过~之前一直没太掌握,今天终于搞懂了TCP连接和释放三次握手为什么不是两次握手丢包问题和乱序问题如何解决四次挥手为什么要四次挥手为什么要超时等待三次握手为什么不是两次握手(1)如果是两次握手在客户端没有及时回应时就会浪费服务端很多资源;(2)可能会出现一种状况,当客户端向服务端发起.

2021-07-20 17:20:23 276 1

原创 从源码分析HashMap和HashTable的不同

1. HashMap线程不安全,HashTable线程安全(体现在源码中HashTable的方法均有Synchronized关键字修饰)2. HashMap和HashTable继承的父类不同,HashMap继承的父类是AbstractMap,而HashTable继承的父类是Dictionary3. 对于key值为null和value值为null的处理方式不同(1)对于HashTable来说,如果key值或者value值为null, 就会抛出NullPointerException(2)

2021-07-20 14:42:37 102

原创 玩转快速排序(递归+非递归)

1.基本思想通过一趟排序将要排序的数据分割成独立的两部分,其中左边的元素值都要小于等于基准值,右边的元素都要大于等于基准值,然后再按此方法对这两部分数据分别进行快速排序。整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序算法通过多次比较和交换来实现排序,其排序流程如下:(1)首先设定一个分界值,通过该分界值将数组分成左右两部分(2)将大于或等于分界值的数据集中到数组右边,小于分界值的数据集中到数组的左边(3)然后对左边和右边的数据可以独立排序。对于左侧的数组数据,又可以取一个分界值

2021-07-18 16:27:18 136 1

原创 堆排序(Java实现)

1.基本思想将待排序的序列构成一个大堆。此时,整个序列的最大值就是堆顶的根节点。将堆顶元素与堆中的末尾元素交换,把最后一个元素从堆中删除。然后将剩余的n-1个序列重新构造一个大堆,重复上述步骤,就可以得到一个升序的有序序列举例:{9,5,2,7,3,6,8}进行堆排序的过程2.性能分析时间复杂度:O(NlogN)空间复杂度:稳定性:3.代码实现代码如下:...

2021-07-17 22:42:27 91

原创 选择排序(Java实现)

1. 算法描述选择排序:在一个长度为N的无序数组中,在第一趟遍历N个数据,找出其中最小的数值与第一个元素交换,第二趟遍历剩下的N-1个数据,找出其中最小的数值与第二个元素交换…第N-1趟遍历剩下的2个数据,找出其中最小的数值与第N-1个元素交换,至此选择排序完成。举例:如有以下数组:{9,5,2,7,3,6,8}第一趟选择排序:{2,9,5,7,3,6,8}第二趟选择排序:{2,3,5,9,7,6,8}第三趟选择排序:{2,3,5,6,9,7,8}第四趟选择排序:{2,3,5,6,7,9,

2021-07-17 21:28:01 388

原创 根据中序遍历与后序遍历还原二叉树

题目描述根据一棵树的中序遍历与后序遍历构造二叉树。注意:你可以假设树中没有重复的元素。用例描述:中序遍历 inorder = [9,3,15,20,7]后序遍历 postorder = [9,15,7,20,3]返回如下的二叉树:3/ 9 20/ 15 7思路题目将中序遍历和后序遍历的结果以数组形式给出,不便于操作,因此可以用集合类来辅助完成二叉树的构建,这里我选用的是常用的list如果中序遍历的list长度为0,说明是空树直接返回nul如果中序遍历的li

2021-07-14 18:56:25 1121

原创 树的相关计算

求树的高度一个n层的二叉树至少有2^n-1个节点那么树的高度n=[log2(节点个数) ]向下取整+1例如:一棵完全二叉树的节点数位为531个,那么这棵树的高度为( 10 )解析:树的高度=[log2 531]+1=9+1=10已知二叉树中叶子节点个数,求二叉树的总节点个数度为2的节点个数 = 度为0的节点个数-1例如:已知一个二叉树中叶子树为50,仅有一个孩子的节点数为30,则总节点数为129解析:(1)度为2的节点个数=度为0的节点个数-1=50-1=49.

2021-07-11 13:14:54 1494

原创 软件体系结构期末自救指南

填空重点SpringBoot的核心功能:集成jar包、自动配置视图模型:逻辑视图和开发视图描述系统静态结构)、物理视图和进程视图(描述系统动态结构)补充:逻辑视图:定义系统目标开发视图和进程视图:提供系统设计的详细方案物理视图:解决系统的拓扑结构、安装和通信问题常见的软件体系结构风格:分层架构、MVC、B/S、C/S、RESTFUL、管道过滤器、事件驱动、响应式、微服务、云计算分类:基本软件体系架构:分层架构、MVC分布式架构 :B/S、C/S、RESTFUL数据处理风格架构:管道过

2021-07-07 10:58:48 435

原创 String

字符串的创建要知道字符串中的坑,首先得生成一个字符串,以下是创建字符串的三种方式: String str1 = "王者荣耀"; String str2 = new String("炉石传说"); char[] array = {'英','雄','联','盟'}; String str3 = new String(array);字符串比较相等(1)比较字符串中的内容是否相同: String str1 = "王者荣耀"; String str2 =.

2021-07-06 17:20:00 103

原创 Java异常

异常的结构Throwable: 有两个重要的子类:Exception(异常)和 Error(错误),二者都是 Java 异常处理的重要子类,各自都包含大量子类。异常和错误的区别是:异常能被程序本身可以处理,错误需要程序员手动处理。Exception(异常)分两大类:运行时异常(非受查异常)和编译时异常(受查异常)运行时异常:在程序运行的时候抛出的异常包括运行时异常(RuntimeException与其子类)和错误(Error)编译时异常:在程序编译的时候出现的异常这种异常

2021-07-06 11:04:16 82

原创 抽象类和接口

抽象类定义:包含抽象方法的类叫做抽象方法,用abstract关键字修饰抽象方法:如果一个方法被abstract修饰,那么这个方法就是抽象方法,可以没有具体的实现。抽象类的注意事项抽象类不能被实例化;抽象类内可以有普通的成员方法和成员变量;抽象类是用来被继承的;如果一个类继承了抽象类,那么这个类必须重写抽象类中的抽象方法;抽象类或者抽象方法不能被final修饰抽象方法不能被private修饰abstract class Shape{ /* //普通方法 publi

2021-07-05 22:45:44 94

原创 第一个springboot程序

使用idea创建springboot程序接着一路Next即可在项目中的pom.xml文件中引入配置文件 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.3.10.RE.

2021-07-01 19:54:46 122

原创 AI期末简答题总结

人工智能研究的各种学派以及理论是什么?(1)符号主义学派:人工智能起源于数理逻辑,人类认知的基元是符号,认知过程是符号运算;智能的基元是知识,核心是知识表示和知识推理;知识可以用符号表示,因此可以建立人工智能和机器智能的一系列体系;代表成果:逻辑理论机的数学证明推理(2)联结主义学派:人工智能起源于仿生学,人类认知的基元是神经元,认知过程是神经元的联结活动过程;思维的基元是神经元,思维过程是神经元的联结过程;他们反对符号主义的物理符号系统;代表成果:MP模型(3)行为主义学派:人工..

2021-06-24 15:24:05 881 2

原创 AI期末大题复习汇总

全局优先搜索问题之8数码问题解题思路:(1)首先看初始状态与目标状态位置的元素有几个不相同:如图所示记作f(x)=4这里为了统一方便好计算,我们每次计算都算上空格的位置(2)每次把空格周围的元素与空格进行交换,观察交换后的元素位置与目标状态位置有几个不相同,每次选择元素个数不同最少的继续向下进行拓展,直至得到目标状态的布局与或树解的代价计算规则:(1)如果某节点为终止节点,那么h(node)=0(2)如果node表示或节点,那么就取当前节点分支中的最小值(3)如果..

2021-06-21 22:31:31 270 2

原创 UI自动化报错Can not connect to the Service解决方案

这个问题我一定要重点记录一下,最近公司的好多网页都犹豫谷歌浏览器升级带来了一系列的问题,今早谷歌浏览器终于把魔爪伸向我了????首先是升级后要在项目中修改它对应版本的chromedriver,之前我的博客有提到过。改完之后,脚本执行一直报错,如下:我甚至重新安装了selenium也无济于事,倒置了一早上,终于找到了解决问题的方法????解决方案:在host文件中添加以下信息:127.0.0.1 localhosthost文件寻找方法:在访达中command+shift+g,输

2021-06-11 13:05:05 4567 1

原创 转置文件内容

题目描述:写一个 bash脚本来转置文本文件nowcoder.txt中的文件内容。为了简单起见,你可以假设:每行列数相同,并且每个字段由空格分隔示例:假设 nowcoder.txt 内容如下:job salaryc++ 13java 14php 12你的脚本应当输出(以词频升序排列):job c++ java phpsalary 13 14 12代码如下:#!/bin/bashawk '{printf $1 ""}' nowcoder.txtawk '{printf $.

2021-06-10 09:31:48 178

原创 第二列是否有重复

题目描述:给定一个 nowcoder.txt文件,其中有3列信息,如下实例,编写一个sheel脚本来检查文件第二列是否有重复,且有几个重复,并提取出重复的行的第二列信息:实例:20201001 python 9920201002 go 8020201002 c++ 8820201003 php 7720201001 go 8820201005 shell 8920201006 java 7020201008 c 10020201007 java 8820201006 go 97.

2021-06-10 09:19:14 117

原创 OJ【二叉搜索树的后序遍历序列】

题目描述:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。(ps:我们约定空树不是二叉搜素树)测试用例输入:[4,8,6,12,16,14,10]输出:true思路:由于是后续遍历,按照左、右、根节点这样的顺序遍历。二叉搜索树满足所有的左子树小于根节点的值,所有的右子树的值大于根节点的值。它的变化规律类似于抛物线,先递增后递减,不满足规律就直接返回false代码如下:public.

2021-06-09 22:58:34 254 1

原创 打工人的Html学习之路

html简介<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>我的第一个Html页面</title> </head> <body> <h1>标题1</h1> <h2>标题2</h2> &l.

2021-06-09 16:09:45 149 1

原创 统计每个单词出现的个数

题目描述:写一个 bash脚本以统计一个文本文件 nowcoder.txt 中每个单词出现的个数。为了简单起见,你可以假设:nowcoder.txt只包括小写字母和空格。每个单词只由小写字母组成。单词间由一个或多个空格字符分隔示例:假设 nowcoder.txt 内容如下:welcome nowcoderwelcome to nowcodernowcoder你的脚本应当输出(以词频升序排列):to 1welcome 2nowcoder 3思路:查看文章|把每个单词变.

2021-06-09 09:08:16 313

原创 统计所有进程占用内存大小的和(Shell脚本 day03)

题目描述:假设 nowcoder.txt 内容如下root 2 0.0 0.0 0 0 ? S 9月25 0:00 [kthreadd]root 4 0.0 0.0 0 0 ? I< 9月25 0:00 [kworker/0:0H]web 1638 1.8 1.8 6311352 612400 ? Sl 10月16 21:52 test.

2021-06-09 08:55:34 394

原创 打印字母数小于8的单词(Shell day03)

题目描述:写一个 bash脚本以统计一个文本文件 nowcoder.txt中字母数小于8的单词。示例:假设 nowcoder.txt 内容如下:how they are implemented and applied in computer 你的脚本应当输出:howtheyareandappliedin代码如下:#!/bin/bashfor i in `cat nowcoder.txt`do if [[ ${#i} -lt 8 ]] then echo $i.

2021-06-09 08:43:48 541

原创 去掉空行(Shell day02)

题目描述:写一个 bash脚本以去掉一个文本文件 nowcoder.txt中的空行示例:假设 nowcoder.txt 内容如下:abc567aaabbbccc你的脚本应当输出:abc567aaabbbccc方法1:#!/bin/bashawk NF nowcoder.txt方法2 :#!/bin/bashwhile read linedoif [ -z $line ]then continueelse echo $line.

2021-06-08 10:03:13 119

原创 打印空行的行号

题目描述:写一个 bash脚本以输出一个文本文件 nowcoder.txt中空行的行号,可能连续,从1开始示例:假设 nowcoder.txt 内容如下:abcdef你的脚本应当输出:357910#!/bin/basha=1while read linedoif [ -z $line ]then echo $afia=$((a+1))done < nowcoder.txt...

2021-06-08 09:54:15 103

原创 输出第5行的内容

题目描述:写一个 bash脚本以输出一个文本文件 nowcoder.txt 中第5行的内容示例:假设 nowcoder.txt 内容如下:welcometonowcoderthisisshellcode你的脚本应当输出:is题解:先使用head -n 5命令筛选出前5行的内容使用管道命令,将前5行的内容作为输入,使用tail -n 1命令找到第5行的内容#!/bin/bashhead -n 5 nowcoder.txt | tail -n 1...

2021-06-08 09:25:40 345

原创 7的倍数(shell脚本 day01)

题目描述:写一个 bash脚本以输出数字 0 到 500 中 7 的倍数(0 7 14 21…)的命令题解:1.首先使用for循环产生0-500这501个数字2.判断当前数字i%7是否等于0,等于0则输出代码如下:#!/bin/bashfor((i=0;i<=500;i++))do if [ "$((i%7))" -eq 0 ] then echo $i fidone...

2021-06-07 22:54:59 1664 2

原创 打印文件的最后5行(Shell 脚本 day01)

题目描述:经常查看日志的时候,会从文件的末尾往前查看,于是请你写一个 bash脚本以输出一个文本文件 nowcoder.txt中的最后5行示例:假设 nowcoder.txt 内容如下:#include<iostream>using namespace std;int main(){int a = 10;int b = 100;cout << "a + b:" << a + b << endl;return 0;}你的脚本应当.

2021-06-07 22:36:25 579

原创 统计文件的行数(Shell day 01)

题目描述:写一个 bash脚本以输出一个文本文件 nowcoder.txt中的行数示例:假设 nowcoder.txt 内容如下:#include <iostream>using namespace std;int main(){ int a = 10; int b = 100; cout << "a + b:" << a + b << endl; return 0;}你的脚本应当输出:9题解:.

2021-06-07 22:30:49 179

原创 06_06错题集

1、模式串的长度是m,主串的长度是n(m<n),使用KMP算法匹配的时间复杂度是()?A.O(m+n)B.O(m∙n)C.O(m∙log2n)D.O(n∙log2m)解析:KMP为线性算法,处理主和匹配串的复杂度都为,所以是O(m+n)2.用俩个栈模拟实现一个队列,如果栈的容量分别是O和P(O>P),那么模拟实现的队列最大容量是多少?A.O+PB.2O+1C.2P+1D.2O-1解析:根据两个栈实现一个队列的思路(短板效应),推出来是2P+13.select语句.

2021-06-06 22:08:52 531 3

原创 Shell脚本自学笔记

Shell脚本第一个Shell程序运行shell脚本的方式第一个Shell程序打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个test.sh文件,扩展名为 sh(sh代表shell),扩展名并不影响脚本执行,主要是为了见名知意,如果你用 java写 shell 脚本,扩展名就用 .java就好了shell脚本第一行一般是固定的:#!/bin/bash代码如下:#!/bin/bashecho "Hello world!"运行结果:运行shell脚本的方式修改

2021-06-06 21:12:06 493

原创 Linux知识点汇总

Linux知识点汇总简介发行版本Linux系统启动过程Linux系统的关机系统目录结构Linux远程登录文件基本属性Linux文件属主和属组更改文件的执行权限文件与目录管理相对路径和绝对路径常用命令查看文件内容简介Linux 是一套免费使用和开源的类 Unix 操作系统,是一个多用户、多任务、支持多线程和多 CPU 的操作系统。发行版本目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian等.Linux系统启动过程内核引导运行init系统初始化建立终

2021-05-27 18:15:01 630 1

原创 Vue项目搭建

安装node环境下载地址为:click me检查是否安装成功:如果输出版本号,说明我们安装node环境成功为了提高我们的效率,可以使用淘宝的镜像:镜像链接输入:npm install -g cnpm –registry=https://registry.npm.taobao.org即可安装npm镜像,以后再用到npm的地方直接用cnpm来代替就好了。搭建Vue项目环境全局安装vue-clinpm install --global vue-cli进入项目目录,创建一.

2021-05-24 13:15:07 62

空空如也

空空如也

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

TA关注的人

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