自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 go语言--数据类型/变量与常量

数据类型:1、数值类型,字符串类型和布尔型2、派生类型;3、类型零值和类型别名;4、类型所占存储大小;go语言数据类型--整型、浮点型、复数、字符串和布尔型数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才会申请大内存,就可以充分利用内存布尔型的值,可以是常量true或者false,字符串类型string,编码统一为:UTF-81、变量声明,初始化与赋值2、变量可见性规则3、常量、常量申明和iota的使用单个变量声明.

2021-02-19 20:02:52 214

原创 go基础语法--package/import

package:package是最基本的分发单位和工程管理中依赖关系的体现;每个go语言源代码文件开头,都拥有一个package声明,表示源码文件所属代码包;要生成go语言可执行程序,必须要有main的package包、且必须在该包下有mai()函数;同一路径下只能存在一个package,一个package可以拆成多个源文件组成;import:import可以导入源代码文件所依赖的oackage包不得导入源代码文件中没有用到的package,否则go语言编译器会报编译错误im

2021-02-19 14:47:55 479

原创 go语言基础语法

go中的关键字:(25个)break、default、func、interface、select、case、defer、go、map、struct、chan、else、goto、package、switch、const、fallthrough、if、range、type、continue、for、import、return、vargo语言中36个预定的标识符,其包括基础数据类型和系统内嵌函数:append、bool、byte、cap、close、complex、complex64、complex

2021-02-19 11:10:59 330

原创 go语言命令行工具

go语言命令行工具:go build:用于编译源码文件、代码包、依赖包;会生成一个exe文件go run:可以编译并运行Go源码文件;go get:命令主要是用来动态获取远程代码包的;

2021-02-19 10:46:23 196

原创 leetcode--【53】最大子序列和

题目:给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组[4,-1,2,1] 的和最大,为6 。输入:nums = [1]输出:1题解:step1:定义一个变量max来存储,最大值,定义一个变量sum来记录累加值;step2:循环便利数组,判断sum+num的值与sum的大小,sum为当前较大值;step3:...

2021-02-07 10:16:18 83

原创 leetcode--【21】合并两个有序链表

题目:合并两个有序链表将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]输入:l1 = [], l2 = []输出:[]输入:l1 = [], l2 = [0]输出:[0]题解:双指针法step1:定义一个新的头节点,用来指向合并后的链表step2:比较两个链表当前所指的值的大小step3:较小值链接起...

2021-02-02 14:09:51 81

原创 HTML结构与DOM树

HTML结构与DOM树html基本结构<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>HTML结构</title></head><body

2021-01-22 17:05:09 413

原创 leetcode--【11】盛最多水的容器

题目:盛最多水的容器给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0) 。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。示例:...

2021-01-20 10:08:54 89

原创 leetcode--【2】两数相加

题目:两数相加给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807输入:l1 = [0], l2 = [0]输出:[0]输入:l1 = [9,9,9,9,9,9,...

2021-01-19 10:43:29 106

原创 leetcode--【15】三数之和

题目:三数之和给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]输入:nums = []输出:[]输入:nums = [0]输出:[]题解双指针:step1:对数组进行排序step2:对已经...

2021-01-18 10:59:23 90

原创 leetcode--【448】找到所有数组中消失的数字

题目:找到所有数组中消失的数字给定一个范围在1 ≤ a[i] ≤ n (n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1, n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。示例:输入: [4,3,2,7,8,2,3,1]输出: [5,6]题解:方法1:暴力法step1:从1到n(数组的长度)遍历step2:判断数组...

2021-01-14 10:37:33 146

原创 leetcode--【160】相交链表

题目:相交链表编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点的值为 8 (注意,如果两个链表相交则不能为 0)。从各自的表头开始算起,链表 A 为 [4,1.

2021-01-13 10:43:25 83

原创 leetcode--【169】多数元素

题目:多数元素给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于⌊ n/2 ⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例:输入:[3,2,3]输出:3输入:[2,2,1,1,1,2,2]输出:2题解:方法1:hashstep1:定义一个hashstep2:遍历数组nums,以key-value的形式,key:当前数字,value:数字出现的次数step3:输出value大于一半所对应的数字..

2021-01-11 14:14:53 94

原创 leetcode--【121】买卖股票的最佳时机

题目:买卖股票的最佳时机给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能...

2021-01-06 15:07:30 85

原创 常见的Linux操作

常见的Linux操作:1、ls:查看当前的目录下的文件 -a 显示所有的文件,包含隐藏文件 -l:显示出文件的具体信息 drwxr-xr-x 7 lmd staff 224 7 17 11:14 work d:代表当前为目录,若是l则为可执行文件 rwx:对应用户的读写权限 r-x:对应用户组的读写权限 r-x:其他用户的读写权限 7:当前文件下包含的文件数...

2021-01-04 14:35:38 165

原创 leetcode--【234】回文链表

题目:回文链表请判断一个链表是否为回文链表示例:输入: 1->2输出: false输入: 1->2->2->1输出: true进阶:你能否用O(n) 时间复杂度和 O(1) 空间复杂度解决此题?方法一:转成数组step1:定义一个空数组step2:遍历链表,将数据存放在数组中step3:遍历数组,start从前往后,end从后往前,直到start=end结束step4:如果start对应的数据与end对应的相等,则start.

2021-01-04 13:59:12 68

原创 leetcode--【206】反转链表

题目:反转链表反转一个单链表。进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL题解:方法1:迭代法step1:设置两个指针,一个prev,初始为null,用来记录当前指针的前一个指针,一个curr,curr初始为head,用于记录当前需要反转的指针step2:遍历链表,对当前的指针进行反转,即cu

2020-12-28 15:26:25 92

原创 leetcode-【347】前k个高频元素

题目:前k个高频对元素给定一个非空的整数数组,返回其中出现频率前k高的元素。提示:你可以假设给定的k总是合理的,且 1 ≤ k ≤ 数组中不相同的元素的个数。你的算法的时间复杂度必须优于 O(n log n) ,n是数组的大小。题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的。你可以按任意顺序返回答案示例:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]输入: nums = [1], k = 1输出...

2020-12-24 11:20:23 137

原创 leetcode—【20】有效的括号

题目:有效的括号给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例:输入: "()"输出: true输入: "(]"输出: false题解:需要遍历时,是从左往右遍历,左括号需要等着右括号匹配,先把左括号存起来,若是右括号,判断是否匹配step1:对字符串进行处理转换成数组,split,这样避.

2020-12-18 15:46:16 130 2

原创 leetcode —【136】只出现一次的数字

题目:只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例:输入: [2,2,1]输出: 1输入: [4,1,2,1,2]输出: 4题解:【方法1:异或】采用异或的特性,解决此题异或运算特性:1、一个数和0异或结果为其本身:a⊕ 0 =a2、一个数的自身和自身进行异或,结果为0:a⊕a=03、异或满足交换律.

2020-12-18 14:20:22 113

原创 leetcode-【1】两数之和

题目:两数之和给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]题解:【方法1:暴力解法】 采用两个for循环,思路简单 step1:循环遍历数组中的每一个...

2020-12-15 17:20:56 142 1

原创 css盒模型

css盒模型:标准盒模型:宽度=内容的宽度(content)+ border + padding + marginIE盒模型(低版本):宽度=内容宽度(content + border + padding)+marginbox-sizing属性用来控制盒子模型的解析模式,默认为content-boxcontent-box:标准的盒子模型,设置的height/width属性,指的是content部分的宽高border-box:IE传统盒子模型,设置的height/width属性,指的是

2020-11-18 17:07:03 62

原创 HTML页面结构语以化

语义化好处:1、易修改、易维护2、无障碍阅读支持3、搜索引擎友好,利于SEO4、面向未来的HTML,浏览器在未来可能提供更丰富的支持结构语义化语义元素均有一个共同特点--他们不做任何事情,仅仅只是页面结构的规范化,不会对内容的本质产生什么影响常见的语义化标签:header:头部<header>元素有两种用法,第一是标注内容的标题,第二是标注网页的页眉nav:导航栏一般用于链接aside(附注)并不仅仅表示侧栏,也可以表示与周围文本没有密切.

2020-11-18 16:31:23 107

原创 Vue中的动态加载组件

Vue中动态组件加载背景:在vue中,内容过多,需要采用分解成不同的组件,在父组件中引入子组件,常见的有静态引入(在某一个组件中指定引入某一个子组件)以及动态引入(在组件中根据不同的场景需要使用不同的子组件),通常使用于对话框的封装中。用法1:通常在vue项目中,需要在组件中引入子组件,常见的方法: 在html中直接引入,此时子组件是写死的,不能改变<div> <my-component/></div>在js中引入一个my-compon...

2020-10-26 16:17:49 2113

原创 debounce的具体实践

Vue中的debounce应用背景:优化搜索框的功能,在输入过程中,可以实时动态进行搜索,但是为了提高搜索效率,频繁进行查询,需要进行防抖解决办法:在输入过程中,在一定时间内没有输入,再进行查找,采用debounce; 因此在编程时,需要注意两点: 第一:监听输入数据的变化,触发搜索(监听一般想到的是watch) 第二:进行防抖,并不是所有的输入,都需要进行搜索,采用定时来实现具体实...

2020-10-23 14:20:48 608

原创 reflow(回流)与repaint(重绘)

reflow(回流)与repaint(重绘)reflow:当render树中的一部分或者全部因为大小边距等问题发生改变而需重建的过程叫回流;          理解:会影响排版的情况下。repaint:当元素的一部分属性发生变化,如外观背景色不会引起布局变化而需要重新渲染的过程叫做重绘;              理解:浏览器得知元素产生了不影响排版的情况下后对这个元素进行重新绘制的过程。例如改变...

2018-03-22 15:56:26 361

原创 前端性能优化

前端性能优化的方法1.减少HTTP请求次数   基本原理:在浏览器和服务器之间发生信息交换时,需要耗费大量时间,而一个正常的http请求是比较复杂的,平凡的发送http请求会大大降低运行速度;而当我们请求的网页中有多个图片、css、js时会频繁的与服务器建立连接,释放连接,会造成资源的浪费,所以减少http请求次数会提高性能;   具体方法:尽量和并图片、css、js。              ...

2018-03-21 13:08:17 241

原创 js中的数组

js中的数组1.定义   数组是值得有序集合;2.创建数组 字面量形式: 空数组:var arr=[]; 带有元素得数组:var arr={1,2,3,4,]; 数组值可以是任意类型:var arr=[1,2.3,'king',[1,2,3],{name:'king'},]; 省略数组中得某个值,默认值为undefined:var arr=[1,,3]; Array()创建数组: 调用时没有参数:...

2018-03-19 21:35:03 216

原创 js函数

js函数一、自定义函数1.通过function关键字   function 函数名称([参数]){    代码段;   return 返回值;}  注意:函数名称不要包含特殊字符;            函数名称最好含义明确;            函数名称最好遵循驼峰标记法或者下划线法;            函数名称严格区分大小写;            函数名称如果重复会产生覆盖;     ...

2018-03-18 18:46:19 288

原创 js表达式与运算符

js表达式与运算符1.表达式    表达式是用于javascript脚本运行时进行计算的式子,可以包含常量、变量、运算符;2.运算符   算术运算符   +-*/% ++ --   注意:数值型支持自增自减运算符、布尔类型支持自增自减运算符、字符串不支持、null支持自增自减、undefined不支持   字符连接符    +号用来连接两个字符串;    只要+连接操作数中有一个是字符串型,js就...

2018-03-18 13:43:52 803

原创 js学习笔记-数值类型转换

JS学习笔记1.隐式转换--转换成布尔类型  undefined-&gt;false;  unll-&gt;false;  数值型0或0.0或nan-&gt;false;  字符串长度为0-&gt;false;2.隐式转换--转换成数值型  undefined-&gt;NaN;  null-&gt;0;  true-&gt;1;  flase-&gt;0;  内容为数字-&gt;数字,否则转换成N...

2018-03-17 13:51:25 321

原创 CSS问题

1.重置css和标准化css的区别是什么   重置:重置意味着除去所有的浏览器默认样式。对于页面所有元素,像margin、padding、font-size这些样式全部置成一样,必须重新定义各种元素的样式。  标准化:标准化没有去掉所有的默认样式,而是保留了有用的一部分,同时还纠正了一些常见错误。   当需要实现非常个性化的网页设计时,我会选择重置的方式,因为我要写很多自定义的样式来满足需求,这时...

2018-03-15 20:37:40 236

原创 HTML问题

1.DCOTYPE有什么用  DOCTYPE是“document type"的缩写,它是用来区分标准模式和怪异模式的声明,用来告知浏览器使用标准模式渲染页面;  从中获得的启发:在页面开始处添加&lt;!DOCTYPE html&gt;即可。2.如何提供包含多种语言内容的页面  当客户端向服务器发送http请求时,通常会发生有关语言首选项信息,比如使用Accept-language请求头。如果替换...

2018-03-15 16:42:59 684

原创 浏览器兼容性

浏览器兼容性问题html部分ul标签内外边距问题ul标签在IE6、7中有个默认的外边距,但是在IE以上及其他浏览器中有个默认的内边距;解决办法:统一设置ul的内外边距为0;css样式的兼容性1.IE6双边距问题:IE6在浮动后,又有横向的margin,此时,该元素的外边距是其值的2倍;   解决办法:display:block;2.IE6图片的下方有空隙;   解决办法:给img设置display...

2018-03-14 16:17:31 220

原创 从输入URL到页面加载发生了什么

从输入URL到页面加载发生了什么总体来说可以分为以下几个过程:1.DNS解析;2.TCP连接;3.发送HTTP请求;4.服务器处理请求并返回HTTP报文;5.浏览器解析渲染页面;6.连接结束;具体过程分析:DNS解析DNS解析的过程就是寻找哪台机器上有你需要资源的过程,实现了由网址都ip地址的转换。互联网上每一台计算机都有唯一的标识:ip地址,但是ip地址记忆并不方便,用户更喜欢去根据网址来寻找,...

2018-03-14 15:26:34 401

原创 网络基础

一、GET和POST的区别1.get可以被浏览器缓存,post不能;2.对于get的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);3.对于post请求,浏览器会先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200;二、websocket1.与http协议一样,同属于应用层协议。最重要的用途时实现客户端与服务端之...

2018-03-13 16:40:10 149

原创 CSS Sprites

CSS Sprites一、CSS Sprites优点1.利用CSS Sprites可以很好地减少网页http请求,从而大大提高了页面的性能,这也是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因;2.CSS Sprites能减少图片的字节,曾经多次比较过,把三张图片合并成一张图片的字节总是小于这三张图片字节的总和。二、CSS Sprites缺点1.在图片合并时,要把多张图片有序的...

2018-03-13 15:12:20 204

原创 AJAX跨域

引起跨域请求的原因:1.浏览器限制;2.跨域3.xhr请求:用jsonp解决同时满足可能会引起跨域安全问题。解决思路:浏览器:设置参数,解除浏览器验证;xhr:使用jsonp解决跨域跨域:被调用方:支持跨域;          调用方:隐藏跨域;...

2018-03-12 17:16:56 158

原创 常见的页面布局

常见的页面布局一、三栏布局1.三列布局,中间宽度自适应,两边定宽;2.中间栏要在浏览器端优先渲染;3.允许任意列的高度最高;4.要求只用一个额外的DIV标签;5.要求用最简单的css;二、多栏布局1.栅栏格系统:利用浮动实现的多栏布局,在bootstrap中用的非常多;2.多列布局:并没有实现真正实现分栏效果,css3为了满足这个要求,增加了多列布局;三、弹性布局css3新引入的一种布局,即伸缩布...

2018-03-12 16:55:08 646

原创 HTTP状态码

HTTP状态码:HTTP响应中包含一个状态码,用来表示服务器对客户端响应的结果:通常由三个数字组成,可以分为五大类:1xx:临时响应,成功接受请求,要求客户端继续提交下一步请求才能完成整个处理过程;2xx:请求已被服务器接收、理解、并接受;3xx:未完成请求,客户端需进一步完成操作才能完成请求,通常,这些状态码是用来重定向的;4xx:客户端的请求有错误;5xx:服务器端出现错误;常见状态码:1xx...

2018-03-12 10:34:09 1072

空空如也

空空如也

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

TA关注的人

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