自定义博客皮肤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)
  • 收藏
  • 关注

原创 spring纯注解整合mybatis(包括踩的坑)

一、创建项目:就是用maven构建springmvc项目详情可见:IDEA使用maven构建spring项目使用的pom.xml代码为:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ma

2021-02-11 15:12:14 256 1

原创 从零开始的数据结构与算法(1)数组(更新中)

代码以上传至github经过了五个月没有刷力扣,我已经变成了个沙口,为了应对实习,决定重头刷数据结构与算法的题。好的,那让我们开始吧。目录:数组的查找算法数组的排序算法Java中Array、ArrayList、Vector的区别一、数组的查找算法对于常用的查找算法,就是顺序查找与二分查找,这里就不讲顺序查找了,太简单,时间复杂度为n。二分查找:/*二分查找:时间复杂度为 logn算法思路:通过比较中间秩与目标数的大小,确定找到并执行返回对应秩,将左边界设为中间秩+1,将右边界设为

2020-09-14 12:10:55 149

原创 解析Java中多态访问方法的原理

多态是面向对象中的一个很重要的部分,这里将介绍下在Java中多态访问方法的原理。一、先简单介绍下多态:同一个方法在不同的类中,执行不同的方法,有不同的结果。简单来讲就是:子类重写父类的方法,然后当子类对象赋给父类变量时执行该方法会执行子类方法。二、原理:这里需要引出一个方法表的概念:对于每一个类都会有一个方法表。如下代码:class Demo1{ public void demo1(){ } public void demo2(){ }}class Demo2 extends Dem

2020-09-04 11:57:24 269

原创 二叉树的后继节点

一、二叉树的后继节点:简单来讲就是在中序遍历中某节点的下一个节点。二、如何判断后继节点如果一个节点有右孩子,那么后继节点就是该节点的右子树的最左叶节点假设节点为1,那么后继节点为6(最左叶节点)2.如果没有右孩子说明以这个节点为根节点的子树遍历完成,应该访问父节点,若该节点是右节点,说明以父节点为根节点的子树遍历完成,再次访问祖父节点,以此类推,直到改节点为左孩子,或者父节点为null。三、代码如下:public class BinNode{ int value; BinNode l

2020-08-25 12:31:44 4624 7

原创 LeetCode刷题实况(三):双指针算法

双指针算法在做题时经常用到:对于线性的数据结构可使用双指针算法,主要形式为从左向右和两面向中间。一、从两面向中间:适用于寻秩访问,确定开头秩与结尾秩,根据一定的条件,移动两个指针。多用于向量数据结构。双向链表知道头尾节点也可以。这里拿《剑指offer》中的“调整数组顺序使奇数排在偶数前”为例题目链接:调整数组顺序使奇数排在偶数前代码如下:class Solution { public int[] exchange(int[] nums) { if(nums.length &

2020-05-13 16:17:21 157

原创 LeetCode刷题实况(二):栈的应用———有效括号嵌套深度(LeetCode1111题)

四月的第一天,乐扣就搞了这么一道阅读理解题。相信做过这道题的小伙伴看到题目就裂开了,本篇博客将为大家解析该题,以及学到的东西。题目链接:1111题有效括号的嵌套深度有效括号字符串 仅由 "(" 和 ")" 构成,并符合下述几个条件之一:空字符串连接,可以记作 AB(A 与 B 连接),其中 A 和 B 都是有效括号字符串嵌套,可以记作 (A),其中 A 是有效括号字符串类似地,我们可...

2020-04-01 08:09:16 188

原创 LeetCode刷题实况(一)快速选择算法-------最小的K个数/最小的第K个数(剑指offer40题)

题目链接:查找最小的K个数本题,一般人的第一思路是用排序,然后取前k个,那么这个时间复杂度,就取决于排序算法的时间复杂度。最小的O(nlogn)。虽然这个很好想,但在面试时只能做最初的方案(面试时很推荐最开始用这个算法,后面再改进,可以让面试官看到你思考的过程)。如果就是排序,没有后续的优化,那这道题答的就太失败了接下来咱们就介绍两种优化的方式,具体用哪一个,看面试官怎么说第一种:快速选择...

2020-03-23 22:23:59 399 5

原创 一文搞懂BFS与DFS

在上一篇中我们学习了数据结构中的图,以及对图进行的动态操作,本章我们将会介绍图非常重要的算法BFS与DFS对于图的遍历,结果相同,区别在于遍历的策略(节点的访问顺序)广度优先搜索(BFS):策略:越早被访问的节点,其邻居越早被选用。简单来说,就是一个节点被访问后,会优先遍历这个节点的邻居。直观点,就是围绕初节点,一层一层的遍历,和二叉树中的层次遍历也是BFS。时间复杂度:首先对所有节点和...

2020-03-13 10:39:52 378

原创 必会的数据结构之图

对于图:可以理解为是一种复杂的树,每一个点之间都可以相连关于图的基本知识,什么入度,出度,通路,简单图等这里就不介绍了。咱们直接上怎么建一个图如何建图:建图的形式分两种,邻接矩阵与邻接表。本文主要介绍邻接矩阵建图的方式,会适当介绍下邻接表。第一步:表示一个基础图一个图有边与点,所以我们首先需要确定好每个点和边的状态以便于后续的算法的使用typedef enum{UNDISCOVERED...

2020-03-06 17:22:15 131

原创 必会的数据结构之二叉树遍历专场

说起二叉树,各位小伙伴肯定不陌生,咱就开个二叉树栏目,今儿就先聊聊二叉树的遍历这二叉树遍历分四种,先中后以及层次遍历。本文只介绍迭代的方式。一、先序遍历:这个先序遍历,它的遍历顺序是,先读父节点,再读左子节点,再读右子节点因为每次读取,都是先本节点,然后读左节点,最后读右节点,按照这个步骤,我们可以沿着左节点下降,同时将同高度的右子树的根节点入栈。只到叶节点,然后弹出栈顶节点(刚刚读过的...

2020-03-02 14:52:11 155

原创 总结虚拟化、容器、docker、k8s的区别

同学拉我一起做个服务外包比赛,做的是容器相关的一个,于是博主开始了解这方面的东西定义自己百度吧,这里就不说了,直接说总结。虚拟化技术:比如VMWARE创建虚拟机,在一台主机上模拟出各种硬件,操作系统,形成一台“新主机”。容器:与虚拟化类似但是有一定区别,容器的操作系统用的是主机的,硬件也是用主机的。容器只带应用文件,和必备的环境docker:如果说容器对标的是虚拟机,那么docker对标的...

2019-12-14 21:31:01 1633

原创 C++学习笔记(八)string类

学会了string类,自己就不用建字符串类了一、string类1、string类是模板类:typedef basic_string<char> string;使用string类要包含头文件2、string对象的初始化string s1("hello");string s2(8,'xs');string s3 = "world";错误的方式:string erro...

2019-11-28 13:15:07 166

原创 C++学习笔记(七)模板

前面有说过C++的另一特点就是泛型编程,接下来介绍的模板就是泛型中很重要的概念一、函数模板1、若两个函数内部逻辑完全相同,只有变量类型不同,如下:void func(int i, int j){};void func(double i, double j){};可以用函数模板解决:template<class 参数类型1,class 参数类型2,........>返回值...

2019-11-27 21:45:24 98

原创 C++学习笔记(六)输入输出与文件读写

一、输入输出相关的类

2019-11-27 19:02:04 333

原创 C++学习笔记(五)多态与虚函数

在介绍多态前,我们先介绍下虚函数一、虚函数1、定义:在类的定义中,前面有virtual关键字的成员函数就是虚函数class example{ virtual int func();};int example::func(){}virtual关键字只用在类定义里的函数声明中,写函数体时不用二、多态1、使用多态的前提:派生类的指针可以赋给基类指针2、多态:通过基类指针调用基类...

2019-11-26 14:54:26 252

原创 C++学习笔记(四)继承

又是一个C++很重要的概念

2019-11-22 16:00:10 91

原创 C++学习笔记(三)运算符重载

我们在C++中在进行某些运算符操作时功能更强大,使代码更简洁一、基础知识(一)、定义:对已有的运算符赋予多重的含义,使同一运算符作用于不同类型的数据时导致不同类型的行为。(二)、目的:扩展C++中提供的运算符的适用范围,使之能作用于对象(三)、1、运算符重载的实质是函数重载。2、可以重载为普通函数,也可以重载为成员函数3、把含运算符的表达式转换成对运算符函数的调用// 假设+已被重...

2019-11-21 21:56:34 279

原创 C++学习笔记(二)类与对象

前言:因为面向过程编程,结构化编程难以拓展,难以查错,所以在面向出现了面向对象编程。面向对象编程就是类+类+类+…+类设计编程的过程就是设计类一、面向对象编程的设计方式,类与对象1、归纳属性:将某类客观事物共同特点(属性)归纳出来,形成一个数据结构(可以用多个变量描述事物的属性比如物体大小等)2、抽象:将这类事物所能进行的行为也归纳出来,形成一个个函数,这些函数用来操作数据结构3、然后...

2019-11-17 20:35:35 129

原创 C++学习笔记(一)C++的基础知识

2019.11.17记,从今天起进行C++和数据结构的学习,为期两周博主看的是中国大学mooc上北大的C++入门课,蛮推荐的,同样还有翁恺的C++。废话不多说,咱们开始一、有C到C++C与C++最大的区别就是面向过程和面向对象,关于面向对象的具体信息后面会降到...

2019-11-17 19:01:28 140

原创 esp8266接入百度云(针对无法连接百度云)

注:我用的是技新的29例程一、接入百度天工首先进入天工创建项目:我这里选的是数据型选择提交其中tcp后是域名,端口号1883创建顺序:主题->身份->用户创建身份选择你刚刚创建的策略要将密匙保存下来,虽然可以重置,但尽量记住创建一个用户到此百度云方面,我们已经处理完,我们可以使用连接测试进行测试(个人观点,这个就是百度云提供的一个MQTT客户端)...

2019-11-05 17:25:37 1813 2

原创 物联网项目智能家居

物联思路esp8266连接stm32,8266STA模式,接入wifi,支持手机配网(配一次),连入阿里云/机智云,并把数据上传到云端。先用安信可提供的下载软件,下入8266。...

2019-11-01 17:40:27 977

转载 Ubuntu18.04搭建ssh与ftp

Ubuntu18.04 ftp和ssh服务搭建

2019-10-10 10:46:37 142

原创 針對VMware安裝Ubuntu後的問題

一、當然是分辨率的問題。問題:我是先安裝的VMware-Tools,然後重啓後,無法滿屏。解決辦法:sudo apt-get installopen-vm-tools如果上面的代碼是無效命令就執行下面的sudo apt-get install open-vm*注:Ubuntu中輸入密碼是不顯示的。二、輸入法的問題,我安裝的是搜狗輸入法,(安裝過程就不說了)出現了選詞面板是亂碼的問題(數...

2019-08-30 19:13:36 85

原创 alexnet原理及tensorflow代码实现

现在开始看论文,第一篇就是alexnet,正好进行个整理,以及代码实现。一、我就不讲alexnet的历史了,直接上网络:alexnet是一种分类网络,有五层卷积层,三层全连接层构成。二:细节:输入是2242243的图片,第一层卷积核为1111,步长为44,padding为VALID,使用了96个卷积核,卷积结束后,224-11/4+1,大小为555596,再经过最大池化33的过滤器,步长为...

2019-08-27 13:54:18 769 4

原创 UCOSIII学习笔记(下)

一、消息传递:两个消息任务之间当然要通讯,那么消息是如何进行通讯的。(1)、消息队列:消息一般包含:指向数据的指针,表明数据长度的变量和记录消息发布时刻的时间戳。UCOSIII内只有消息队列没有消息邮箱(其实邮箱就是消息个数只有1的消息队列)注:中断只能用OSPOST发送消息(2)、在 UCOSIII 中对于消息队列的读取既可以采用先进先出(FIFO)的方式,也可以采用后进先出(LIFO)...

2019-08-24 21:22:16 232

原创 UCOSIII学习总结(中)

一、ucos中断管理:(1)、在ucos中当中断在运行时,如果有更高优先级的任务就绪,要等到中断结束后再运行该任务。我们在编写 UCOSIII 的中断服务程序的时候需要使用到两个函数 OSIntEnter()和OSIntExit()。代码上就是中断服务函数前加个Enter结尾加个Exit(2)、UCOSIII 对从中断发布消息或者信号的处理有两种模式:直接发布和延迟发布两种方式。我们可以...

2019-08-24 20:42:01 215

原创 UCOSIII学习总结(上)

最近在听原子的ucosIII的网课,之前写了两篇,后面他主要是在讲api函数,单做一个博客有点少,就把知识点都放到一起了。一、任务管理操作系统最重要的一个就是任务管理,操作系统通过切换cpu处理的任务,来达到资源利用率最大的效果。(1)在ucos中使用任务前,先初始化任务,然后再创建任务。(2)任务分休眠态,就绪态,运行态,等待态,中断服务态。(此处挂一个原子的任务状态转换图)当任务遇到...

2019-08-24 19:51:20 316

原创 正点原子ucosIII学习笔记(二)

本节介绍了将ucos移植到stm32开发板上。对于这个移植,个人理解:将现有的一个操作系统比如ucos(官方给了代码)或者自己写的一个操作系统,根据要应用到的芯片,对操作系统进行修改,已能够顺利的跑起来,(根据不同的型号进行不同的修改)。ucos的主体是不需要修改的,要修改的是与cpu相关的文件,几个config文件。这一节就是展示了下怎么进行移植,对于移植文件的具体细节要到后面讲解...

2019-08-13 17:01:23 748

原创 正点原子ucosIII学习笔记(一)

最近又开了新坑,在学过stm32后,我选择去学学嵌入式操作系统,就从ucosIII开始好了。我看的是正点原子ucosIII的课程。第一节主要是介绍了下裸机跑程序和加操作系统跑程序的区别:裸机的话,一个程序可分为前端和后端。后端就是一个大循环,通过一个死循环,不断的调用HADEWARE里函数的api,前端就是当有中断出现,处理中断就是前端。加上操作系统的话如下图每一个小任务都是一个死循环,...

2019-08-13 16:46:39 1316

原创 猫狗大战实验笔记

猫狗大战(简单的目标识别):1、图片处理:(1)所给的图片像素不同,无法处理,图片还是jpg形式需要解码,图片还要加上标签,去标记,才能去比对然后训练(2)所获得的数据集是大量的,需要把这些数据分成队列,一队有多少个图片,一次训练,就给神经网络这一队的数据,分组的任务也在图片处理这方面这两部分都怎么做:(1)第一部分:给图片打上标签,先把这一类型的图片提取出,放到一个列表里,并给这些...

2019-07-06 09:59:17 1677

原创 针对猫狗大战输出结果都是猫的问题

最近我在做猫狗大战,在CSDN上找到的代码基本都是类似,我大概找了3,4中类型的,下面我列出这几种代码的不同。首先:第一种代码,是先池化,再归一化,我跑了1000多步就开始过拟合。解决方法是第二种代码:先归一化,然后用归一化的结果,去池化,大概在8000步以上才会出现过拟合。提取文件,构建网络,训练这几个方面CSDN上的代码大部分都是可行的。但是在模型检测都出了bug我出现的情况是都是猫而...

2019-07-06 09:56:47 711 10

原创 51单片机学习笔记

1、动态数码管:用for循环加switch语句来选择是哪个LED亮138译码器的0 1 2 3 4 5 6 7对应的 ABC接口是的数要是对应的二进制编码,对二求二进制时是 0 1 0所以 A = 0, B = 1, C = 0用延时函数来使LED实现不同情况(常亮还是流水),延时函数要接P0归零消除重影(虽然我没看到重影,,,,因为数码管炸了,,,,)2、独立按键通过检测P30~3的...

2019-01-30 17:52:26 306

空空如也

空空如也

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

TA关注的人

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