自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ide快捷键以及js的小知识

事件委托的核心思想是利用事件冒泡,每个子节点的事件都会冒泡泡到父节点中,因此可以给父节点注册事件,通过一次注册dom,就能完成。this在函数定义时是不能确定指向的,通常在函数运行时会指定函数的调用者,而且vue里的箭头函数,回调函数也有这种该问题;在全局函数或者普通函数中,this指向widows,在构造函数中指向实例,在回调函数和被调用函数中,指向调用者。节点可以增加也可以删除,可以参考列表的操作方法,设置某个节点为父节点或者子节点、网页上的所有内容都是节点(node),包括标签,属性,文本,注释。..

2022-08-25 18:03:21 377 1

原创 工作遇到的问题以及解决处理方法-主要是基于vue的antd

工作遇到的问题

2022-08-11 17:26:06 368

原创 基于Antd的模态框modal不显示 确认和取消按钮

基于Antd的模态框modal不显示 确认和取消按钮

2022-08-10 15:48:27 5944

原创 当数据库的主表和relation表数据不完全匹配时怎么计算成员数

工作时遇到的问题。

2022-08-08 11:11:18 245

原创 学习方法

我之前学习的方式都是面向百度编程。但是一则百度的知识都是碎片化的,二则试错的时间成本太大。百度的答案不客气的说百分之99都是由网络爬虫爬出来的,简直就是智障。而且即使有幸找到了原始的答案也很难配合上。在做一个需求之前应该先用脑子或者纸笔写出来自己认为的流程,再分析这个流程自己有什么问题,或者说不确定的地方,有针对性的查找资料。...

2022-05-07 20:07:54 155

原创 记一个错误,原来vue项目需要后端项目打开才能运行

搞了半天了。原本一直好好的,但是昨天vue项目报错。查看配置文件export const BASEREQUESTURL = 'http://localhost:8081/'是8081,当时陷入了误区认为这是该项目的端口号再打开谷歌浏览器的调试台 按F12发现错误信息没有改代码,那就是外部环境的错。第一个想到的就是端口号查看了vue前端的端口号。不是8081,我尝试了把81改成8081,提示无法访。换一种方法,export const BASERE.

2022-04-26 09:57:58 796

原创 记录运行springboot下的一个hello world所踩的坑

使用java的springboot框架写hello world,并解决了一个问题

2022-04-13 16:25:40 180

转载 sping的注解注入

@Component放到类上面标注,可以使POJO类(普通的java类)转换为容器管理的beanSpring还提供了三个等效注解@Controller:对Controller实现类进行注解。@Service:用于对Service进行类注解@Responsitory:用于对DAO进行类注解扫描注解定义的bean在实现类上添加注解之后,还需要在配置文件中设置扫描类包才能让Spring容器识别到<?xml version="1.0" encoding="UTF-8" ?>

2022-04-11 10:36:50 76

原创 学习Java引起对系统分配内存的思考

学习Java时了解了它的内存分配情况,Java将内存分为堆区,栈区和静态区。这引起我的思考,我在学习C++时学到C++分别将内存分为了堆、栈、自由存储区、全局/静态存储区和常量存储区。那么不同的内存分区会根据内存的不同而发吗?为什么要那么分?如果分了以后,为什么堆区 栈区 静态区的效率不同?针对第一个问题,不是,内存在物理层面上是相同的,无所谓分区,第二个问题,我的回答是,它就是那么分的,就像为什么男人和女人有两种性别一样,或许有答案。第三个问题,从硬件的角度来看,内存都是一样的但是

2022-04-01 11:11:20 690

原创 Java泛型基本操作

import java.lang.reflect.Array;import java.util.*;interface trytry<T>{ public void Try();}class father<T> { father(){ System.out.println("就是个非静态构造函数"); System.out.println("father end"); } publ.

2022-03-31 19:12:34 210

原创 Java的main函数里的参数研究

今天学习Java犯了个低级错误,main函数的参数Stirng忘记加[],导致在idea平台无法编译运行。这是源码。import java.lang.reflect.Array;import java.util.*;public class test { public static void main(String args){ Class c1 = new ArrayList<String>().getClass(); Class c

2022-03-31 16:53:33 486

原创 java的向上向下类型转换

class dog extends anmale{ int dog; void eat(){ System.out.println("dog eat"); }}class cat extends anmale{ int cat; void eat(){ System.out.println("cat eat"); }}public class anmale { public static void main.

2022-03-30 10:44:42 1471

原创 JAVA学习笔记0

从0开始学习JAVA。所用教材为《thinking in JAVA》JAVA是一种面向对象oop的语言,和C++类似,我个人认为它是一门C++-的语言,有以下区别1.废除了C++中独立存在的变量和函数,必须使用类。2.取消了指针的使用,JAVA 中的传入到方法的对象是其引用,而C++传入到方法的形参可以是指针,引用或者是调用拷贝构造出的新的对象。3.JAVA中程序员使用new在堆上分配空间调用构造函数来实例化变量,C++中也用new来分配内存,但是需要自己delete掉内存否则会内存泄漏

2022-03-28 18:55:54 721

原创 根据先序和中序求二叉树

举个例子EBADCFHGIKJ 先序(根左右)ABCDEFGHIJK中序 (左根右)我将其求二叉树的过程称为 求根方法在先序上的每个节点都是其子树的根节点(听起来是废话)先通过先序找到根节点E,在中序中可以看出,ABCD E FGHIJK,E的左边就是左子树的节点ABCD,E的右边是右子树的节点FGHIJK。再通过先序找到第二个节点B,在中序中可以看出,B的左边就是左子树的节点A,B的右边是右子树的节点CD依次类推不断的在先序中找到节点作为根节点,再从中序遍历中看到该节点的左右孩子所属

2020-09-25 19:49:45 7790 2

原创 C++new运算符

new运算符虽然用的很久,但是我实际上对它的了解仅仅局限于表面知道和malloc一样可以在堆内存中申请内存,可能会调用对象的构造函数。但是具体的实现和什么时候调用构造函数完全不了解,因此今天在这里进行梳理。1. new的常见用法int *a =new int[5];int *b =new A();在实际操作中,我们发现A的申请的空间的储存的值为随机值,new仅仅申请了一块随机空间,但是B的申请的空间的值已经初始化了,new调用了A的构造函数。new A()的功能如下在堆上申请空间在分配的空

2020-09-25 19:14:09 616

原创 填充每个节点的下一个右侧节点指针 II

给定一个二叉树struct Node {int val;Node *left;Node *right;Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。初始状态下,所有 next 指针都被设置为 NULL。思路:通常而言,这种题目和层序遍历有分不开的关系,使用队列辅助实现,空间复杂度为O(N),完成代码如下class Solution {public: Node* connect

2020-09-24 11:17:36 211

原创 每日一题回溯算法

今天要写的题目是剑指 Offer 38. 字符串的排列输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。示例:输入:s = “abc”输出:[“abc”,“acb”,“bac”,“bca”,“cab”,“cba”]万物皆可暴力,但是时间复杂度太高了,因此我们可以考虑dfs和回溯算法需要注意的是如果给出了的字符串有重复字符,则需要剪枝操作。下面为回溯的代码class Solution {public:vector<stri

2020-09-24 07:58:26 141

原创 滑动窗口的最大值

每天学一点,今天解决的是剑指offer的剑指 Offer 59 - I. 滑动窗口的最大值。输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7]滑动窗口的位置 最大值[1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3 5] 3 6 7 51 3 -1 [-3 5 3] 6

2020-09-23 23:57:20 181

原创 每日一题47. 全排列 II

给定一个可包含重复数字的序列,返回所有不重复的全排列。示例:输入: [1,1,2]输出:[[1,1,2],[1,2,1],[2,1,1]]这题看完后是头痛的,还是用dfs算法比较好解,首先把这道题理解成给你一些数字,让你用这些数字进行填空,最后把所有填得的数列存起来返回。难点:这些数字是具有重复性质的因此,需要一个数组来纪录某个数字及其重复数字是否填入,如果填入就跳过,否则继续。vector<int> vis;vis.resize(nums.size());if(vis

2020-09-18 18:38:00 154

原创 面试题 05.07. 配对交换

配对交换。编写程序,交换某个整数的奇数位和偶数位,尽量使用较少的指令(也就是说,位0与位1交换,位2与位3交换,以此类推)。示例1:输入:num = 2(或者0b10)输出 1 (或者 0b01)示例2:输入:num = 3输出:3这题开始没搞懂,以为是十进制的奇数偶数交换,然后发现是2进制的奇数偶数交换,开始使用stl容器进行纪录每一个数位的数字,再进行交换class Solution {public: int exchangeBits(int num) { ve

2020-09-13 12:04:18 166

原创 面试题 08.01. 三步问题

三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。示例1:输入:n = 3输出:4说明: 有四种走法示例2:输入:n = 5输出:13有一说一,这就是青蛙跳台阶问题,我开始写的代码如下class Solution {public: int waysToStep(int n) { int sum = 0; dfs(n,sum);

2020-09-13 11:38:41 135

原创 每日一题单词搜索

给定一个二维网格和一个单词,找出该单词是否存在于网格中。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。示例:board =[[‘A’,‘B’,‘C’,‘E’],[‘S’,‘F’,‘C’,‘S’],[‘A’,‘D’,‘E’,‘E’]]给定 word = “ABCCED”, 返回 true给定 word = “SEE”, 返回 true给定 word = “ABCB”, 返回 false应该使

2020-09-13 11:16:34 127

原创 每日一题总结二叉树的层平均值

给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。示例 1:输入:3/ 9 20/ 15 7输出:[3, 14.5, 11]解释:第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。这道题的实质是考察层序遍历,深度优先搜索和广度优先搜索对深度优先而言,需要维护两个序列,一个用来保存节点数,一个用来保存节点之和,最后除。对于深度优先而言DSF函数需要四个参数,根节点,当前层数,节点数队列,节点队列DFS

2020-09-12 11:03:14 167

原创 面试总结(1)

首先自我介绍,大概讲了自己在大学的经历,不小心给自己挖了个坑,说自己对于知识比较渴望,然后就出不来了。第二点在自己的知识介绍里着重强调了avl树,红黑树,智能指针的掌握情况比较好但是情况和实际情况不同第三点在介绍stl中的vector和stl中的差别例如插入等操作没有介绍清楚第四点在代码中有三个合并链表,堆排序没写出来。(30%太紧张+70%知识储备不足)...

2020-08-20 11:05:50 151

原创 Come back

新佛曰:夷般隸缽我莊修如彌如咒須菩空南莊降兜念囉咒摩耨慧叻劫諦修闍色闍修南修波降空摩叻彌咒闍菩修降咒須色慧僧隸空婆般斯阿宣南塞心嚴斯寂般波摩亦迦是喃嚩修嚴愍隸哆諸哆訶色夷吽彌宣劫即斯尊咤薩莊南願斯羅寂念喃即心諦僧南婆陀囉隸莊塞迦陀心缽薩囉吶咤南須僧聞訶塞色所聞修空我隸祗莊兜兜咤宣咒念眾諸南訶斯我修迦愍宣訶慧阿嚤祗喼陀聞空南訶婆嘚喃念哆蜜摩須波蜜祗慧南菩劫聞迦色須迦斯南聞愍嚴伏婆缽迦須如諸空劫南喃嚤祗陀喃如亦囑囑...

2020-07-09 23:28:26 3181

原创 每日一题:动态规划

你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1]输出: 4解释: 偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号...

2019-11-24 20:49:27 138

原创 每日一题

给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。class Solution {public: int maxArea(vector<i...

2019-11-24 14:01:34 179

原创 笔试题

当时没想通,现在想想这道题根本不是编程题而是一道数学题在地下室里放着n种颜色的手套,手套分左右手,但是每种颜色的左右手手套个数不一定相同。A先生现在要出门,所以他要去地下室选手套。但是昏暗的灯光让他无法分辨手套的颜色,只能分辨出左右手。所以他会多拿一些手套,然后选出一双颜色相同的左右手手套。现在的问题是,他至少要拿多少只手套(左手加右手),才能保证一定能选出一双颜色相同的手套。给定颜色种数...

2019-11-23 22:04:56 337

原创 C++复习:类型转换

C++类型转换C++类型转换分为两类隐式转换显示转换隐式转换原则基本数据类型的转换以取值范围的作为转换基础隐式转换发生在从小到大的转换中,比如,从char到int,从int到long中。自定义子类对象可以隐式转换到父类对象中。隐式转换发生条件混合类型的算术运算中int a=3;double b = 4.5;a+b;不同类型的赋值操作int a=true...

2019-11-06 20:55:16 179

原创 [面试]——菱形继承和虚继承

这个博客用来记录,我面试时当时没有想出来的题。你知道菱形继承吗?讲一下菱形继承,顾名思义是一种继承方式,假设有两个派生类分别继承了基类,则它们都会有基类的公有成员,当第三个派生类继承了前两个派生类后,就有了菱形继承,第三个派生类会有两套基类的成员,画图表示如下。虚继承可以解决这个问题。讲一下虚继承虚继承是一种机制,让继承该虚基类的派生类共享其成员,无论派生多少次,都只实现一次虚...

2019-11-04 12:34:41 221

原创 linux(7)进程间通讯

进程运行时时具有独立性的,让它本身通信是困难的,所以进程通信的前提条件是让进程看到同一份资源(通常指的是某一块内存)**进程间通信的目的**...

2019-11-03 16:05:57 125

原创 [网络]——UDP协议分析

写完了TCP,运输层的UDP协议最好也总结一下,本篇博客资料来自谢希仁《计算机网络》,真的很推荐看一遍。1.UDP协议UDP协议是运输层协议,有以下的特点。UDP是无连接的UDP尽最大努力交付,但不保证可靠性UDP是面向报文UDP没有拥塞控制UDP支持一对一,一对多和多对多的交互通信。UDP的首部较短只有8个字节UDP是无连接发送数据前不需要建立连接,发送完后同样不需要...

2019-11-03 11:07:29 651 1

原创 [网络]——TCP协议分析

TCP有关的资料和书籍,网上搜索恐怕汗牛充栋,我写这篇博客也是为了学习巩固,参考了《计算机网络》和goole的很多博客,毕竟站在巨人的肩膀上才能看的更高走的更远。1.TCP协议TCP协议属于TCP/IP协议中的传输层协议,有以下几个特点。TCP是面向连接的运输层协议。每一条TCP连接只能点对点TCP提供可靠交付的服务TCP提供全双工通讯面向字节流。TCP是面向连接的传输层协...

2019-11-02 20:22:30 1834

原创 [网络]——编程套接字和BSD相关API

终于完成了linux的几种设计模式来到了网络的章节,在这里我们可以尝试实现TCP,UDP的c/s服务器,不过在这之前,首先了解网络编程的一些基础概念。套接字套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。网络套接字是IP地址与端口的组合。 ...

2019-11-01 12:05:34 467

原创 [linux]-------线程池

上一篇博客我们实现了读者写者模型,在这篇博客中更进一步的完成线程池。线程池概念开辟一块内存空间,里面存在大量的(未死亡的)线程,池中的线程调度由池管理器来处理,当有线程任务时,从池中选一个线程运行,当运行完毕后,该线程又返回池中,这样就避免了反复创建线程所带来的性能开销,节省了系统资源。如果对线程概念不清晰的话,不妨先看看我是一个线程这篇文章线程池的应用场景需要大量的线程来完成任务...

2019-10-30 20:23:13 144

原创 [Linux]--------读者写者模型

在之前的博客中我们说明了生产者消费者模型,在这篇博客中我们讨论类似的模型读者写者模型。概念读者写者模型是操作系统的一种同步与互斥机制,与生产者消费者模型相似,区别在于多个读者可以共享缓冲区,但是对于写者而言相互是竞争关系,一次只能有一个写者,写入缓冲区。读者写者模型具有的条件写者排他性:有多个写者的情况下,只有一个写者能够占用缓冲区。读者的并行机制:可以有多个读者同时使用缓冲区。如...

2019-10-30 14:16:56 359

原创 [Linux]——基于信号量的生产者消费者模型

生产者消费者模型在上一篇博客[Linux]------基于阻塞队列的生产者消费者模型中,我们实现了单生产者消费者模型,在本篇博客中,我们的生产者消费者模型会有两个改变不是用一般队列作为缓冲区,而是用环形队列作为缓冲区不使用pthread_mutex,而使用信号量来实现生产者消费者的同步。POSIX信号量使用的是POSIX信号量而不是之前的system_v,因为这两个信号量作用相同,都...

2019-10-29 22:00:30 311

原创 [Linux]------基于阻塞队列的生产者消费者模型

生产者消费者概念在实际的开发中,通常会碰到一个场景,有一个模块产生数据被称为生产者,另一个模块来接受数据被称为消费者(此处的模块是指广义的模块 函数,类,进程等),但是有生产者和消费者的场景还不能称为生产者消费者模型,还需要一个缓冲区在生产者和消费者之间作为中介,生产者把数据放到缓冲区中,消费者从缓冲区中取数据。这个关系类似生活中我们到超市买东西,供货商将商品送到超市,我们就是消费者,供货商...

2019-10-29 17:11:17 213

原创 C语言复习:const ,static ,sizeof,宏

这篇博客是对于我个人的知识的复习,当然如果有某位大佬能够指出这里面有哪些概念含糊不清或者难懂,麻烦指出来感激不尽。1.constconst:用const修饰的变量是“可读的”,即可以被访问,但是无法修改。const可以修饰指针,数据成员,成员函数,类对象修饰指针指针常量和常量指针顾名思义,类似int* const p;//指针常量,const修饰pconst int* q;...

2019-10-28 12:17:58 199

原创 C语言复习:面试题memmcpy和memmove的区别及原因,itoa和atoi的实现

常见的面试题1.请说一下memcpy和memmove的函数用途?memcpy和memove都是string.h的函数,声明为void* memcpy(void* dest,const void* str,int n);void* memove(void* dest,const void* str,int n);作用是把源内存复制n个字节到目标内存中,作用是相同的。2.请说出他们的区别...

2019-10-27 19:46:36 245

空空如也

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

TA关注的人

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