自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 nodejs 项目搭建01Day

1、目录搭建bin 存放入口启动文件config 存放配置文件src 存放资源配置文件 control 入口函数 logic 逻辑处理 modal 数据库模型 route 路由 lib 第三方操作 utils 公共组件 app 存放不同的app2、npm包管理包管理文件:package.jsonPackage.json 属性说明name:包名version:包的版本号description:包的描述homepage:包的官网 urlauthor:包的作者姓名c

2020-11-25 11:17:41 1

转载 windows定时任务

定时提醒下班打卡windowsji算计管理命令:compmgmt.mschttps://www.cnblogs.com/js1314/p/11480655.html

2020-11-24 10:40:04 10

原创 ES数据库学习

1、概念elasticsearch简写es,es是一个高扩展、开源的全文检索和分析引擎,它可以准实时地快速存储、搜索、分析海量的数据。2、全文检索全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。全文搜索搜索引擎数据库中的数据。3、ES应用场景(1)一个线上商城系统,用户需要搜索商城上的商品。在这里你可以用

2020-11-19 11:14:15 17

原创 mongoDB学习

1、简介MongoDB是一个基于分布式文件存储的数据库。由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。2、专业术语3、基本命令4、node中使用mongoDBMongoose是一款能够在 nodejs 中操作 MongoDB 数据库的模块(1)建立连接//1.引入 mongooseconst mongoose = require("mongoose");//2.定义数据库的链接地址 37代表数据库的名字const url = 'mongodb://127.

2020-11-19 10:21:01 6

转载 nodejs--async,await,promise.all()简单描述

async,await,promise.all()应用简单的描述,同步处理异步,await字面意思等待。首先三个promise,实际应用可以看为axios请求嘛let runA = function () { return new Promise((resolve, reject) => { setTimeout(function () { console.log("2秒后 ru

2020-11-18 12:16:18 26

转载 nodejs--kafka

producer.jsvar kafka = require('kafka-node');var Producer = kafka.Producer;// 建立与kafka的连接var client = new kafka.KafkaClient('localhost:9092');// 创建生产者var producer = new Producer(client);// topicvar topic = 'test';var payloads = [{ // 需要发送的一些配置

2020-11-18 11:14:52 10

转载 mySQL 关于bool类型

mysql是不支持bool类型的,所以,当把一个数据设置成bool类型的时候,数据库会自动转换成tinyint(1)的数据类型,其实这个就是变相的bool。 默认值也就是1,0两种,分别对应了bool的true和false

2020-11-17 16:43:18 8

转载 nodejs--redis模块

1、简介2、使用(1)连接var redis = require('redis'), config = require('../config'), dbConfig = config.redis, RDS_PORT = dbConfig.port, //端口号 RDS_HOST = dbConfig.host, //服务器IP RDS_PWD = dbConfig.pass, //密码 RDS_OPTS = {auth_pass

2020-11-17 16:38:07 9

原创 nodejs--数据库模块

1、简述2、入门(1)连接mysqlconfig.js实际上是一个简单的配置文件:var config = { database: 'test', // 使用哪个数据库 username: 'www', // 用户名 password: 'www', // 口令 host: 'localhost', // 主机名 port: 3306 // 端口号,MySQL默认3306};module.exports = config;在app.js中操作数据库

2020-11-16 18:59:30 26

转载 nodejs--时间模块

1、日期格式化moment().format('MMMM Do YYYY, h:mm:ss a'); // 十一月 16日 2020, 9:57:04 上午moment().format('dddd'); // 星期一moment().format("MMM Do YY"); // 11月 16日 20moment().format('YYYY [escaped] YYYY'); // 2020 escaped 2020mo

2020-11-16 16:37:53 7

原创 nodejs--基础学习

//待续

2020-11-16 16:29:00 13

原创 eslint学习

1、概念JSlint 一直是前端\nodejs代码检测工具2、实践{ "extends": "standard", "rules": { // 换行风格unix(\n) "linebreak-style": [ "error", "unix" ], // 允许大括号内使用空格 "object-curly-spacing": [ "err

2020-11-16 15:57:39 9

原创 Lodash学习

1、概念Loadash 是一个一致性、模块化、高性能的 JavaScript 实用工具库。2、常用_.last(array) //获取array中的最后一个元素。_.toString(value) // 转换 value 为字符串。 null 和 undefined 将返回空字符串。-0 将被转换为字符串"-0"。_.range([start=0], end, [step=1]) //获取数组[start,end)区间的数,每间隔step长度_.times(n, [iteratee=_.

2020-11-16 15:31:51 9

原创 node--koa学习

1、基础用法const Koa = require('koa');const app = new Koa();app.use(async ctx => { ctx.body = 'Hello World';});app.listen(3000);(1)创建对象const Koa = require('koa');const app = new Koa();(2)app.use()将给定的中间件方法添加到此应用程序。app.use() 返回 this, 因此可以链式表达.

2020-11-16 14:38:04 14

原创 ES6学习

1、let与constlet(1)块内有效(2)不可重复声明(3)没有变量预申明const(1)声明必须初始化(2)声明后的变量不可修改2、解构赋值(1)数组结构(2)对象结构3、map与set(1)map(2)set4、字符串ES6 之前判断字符串是否包含子串,用 indexOf 方法,ES6 新增了子串的识别方法。(1)识别字串includes():返回布尔值,判断是否找到参数字符串(包含字串)。startsWith():返回布尔值,判断参数字符串是否在原字符串的头部

2020-11-16 11:12:53 8

原创 git使用进阶

1、查看commit信息git log //查看完整提交历史信息git show //查看最近一次提交的完整信息git show [commit_id] 查看某次历史提交信息的完整信息git show HEAD查看HEAD标签当前指向的提交的完整信息git show master 查看master分支最新一次提交的完整信息2、删除分支git branch -d 分支名 //删除本地分支git push origin --delete [branchname]

2020-11-12 18:14:13 18

原创 LF和CRLF的转换

1、概念CRLF 是 carriage return line feed 的缩写,中文意思是回车换行。LF 是 line feed 的缩写,中文意思也是换行。它们都是文本换行的方式。区别:CRLF: “\r\n”, windows系统环境下的换行方式LF: “\n”, Linux系统环境下的换行方式https://www.cnblogs.com/jasonboren/p/12337002.html2、vscode修改配置设置–》用户设置–》文本编辑器–》文件–》eol–》设置为\n或者直

2020-11-10 20:21:17 20

转载 Golang面试题解析

1、以下代码有什么问题,说明原因type student struct { Name string Age int}func pase_student() { m := make(map[string]*student) stus := []student{ {Name: "zhou", Age: 24}, {Name: "li", Age: 23}, {Name: "wang", Age: 22}, }

2020-11-10 17:32:16 21

原创 Linux命令学习

1、less众所周知linux中命令cat、more、less均可用来查看文件内容,主要区别有:cat是一次性显示整个文件的内容,还可以将多个文件连接起来显示,它常与重定向符号配合使用,适用于文件内容少的情况;more和less一般用于显示文件内容超过一屏的内容,并且提供翻页的功能。more比cat强大,提供分页显示的功能,less比more更强大,提供翻页,跳转,查找等命令。而且more和less都支持:用空格显示下一页,按键b显示上一页。https://www.cnblogs.com/longc

2020-11-10 16:29:47 15

原创 远程登录学习

1、sshSSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。ssh -help 查看ssh操作的参数ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log

2020-11-10 15:20:40 30 1

原创 交替打印1~10

1、题目有两个协程,A打印1-10,B打印1-10,交替打印2、解题1channel阻塞等待,两个channelpackage mainimport "fmt"func main(){ exit := make(chan int) a := make(chan bool,1) b := make(chan bool) go func() { for i:= 1;i <= 10;i++{ if ok := <- a;ok{ fmt.Println("A:"

2020-10-28 16:37:33 10

原创 二叉树两个节点的最近公共祖先节点

1、题目给定一棵二叉树以及这棵树上的两个节点 o1 和 o2,请找到 o1 和 o2 的最近公共祖先节点。2、解题1:递归公共祖先节点只有两种情况:(1)两个节点在同一侧(2)两个节点在不同侧package mainimport . "nc_tools"/* * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } *//** * * @param root TreeN

2020-10-28 12:47:34 75

原创 二叉树的最大路径和

1、题目给定一个二叉树,请计算节点值之和最大的路径的节点值之和是多少。这个路径的开始节点和结束节点可以是二叉树中的任意节点例如:给出以下的二叉树,返回的结果为62、解题//1个是没有把握到这里的路径还是可以左+根+右这样的曲的路径。//2个是:在包含负数的处理过程中没有意识到如果是负数直接摒弃掉就可以了,因为最后反正都是抵消的因子//还有一定就是 我们用一个共享的变量记录了最大值,所以这个时候我们在递归的时候不需要关心如果不以子节点作为路径中一个元素时此时的最大值是什么,//因为如果是

2020-10-27 23:13:06 19

原创 实现二叉树先序,中序和后序

1、题目分别按照二叉树先序,中序和后序打印所有的节点。2、解题1递归方式/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */class Solution {public: /** * * @param root TreeNode类 the root of binary tree * @return int整型v

2020-10-27 21:34:27 21

原创 合并k个已排序的链表

1、题目合并\ k k 个已排序的链表并将其作为一个已排序的链表返回。分析并描述其复杂度。2、解题1时间复杂度O(n*k)package mainimport . "nc_tools"/* * type ListNode struct{ * Val int * Next *ListNode * } *//** * * @param lists ListNode类一维数组 * @return ListNode类*/func mergeKLists( lists

2020-10-25 22:47:03 13

原创 括号序列

1、题目给出一个仅包含字符’(’,’)’,’{’,’}’,’[‘和’]’,的字符串,判断给出的字符串是否是合法的括号序列括号必须以正确的顺序关闭,"()“和”()[]{}“都是合法的括号序列,但”(]“和”([)]"不合法。2、解题package main/** * * @param s string字符串 * @return bool布尔型*/func isValid( s string ) bool { // write code here if len(

2020-10-25 21:41:11 19

原创 结构型模式--享元模式

1、概念享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能。这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式。2、实践//待续...

2020-10-25 17:32:48 7

原创 结构型模式--桥接模式

1、概念桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化。这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。2、实践//待续...

2020-10-25 17:06:39 7

原创 结构型模式--组合模式

1、概念将对象组合成树形结构以表示"部分-整体"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。2、实践//待续

2020-10-25 16:46:23 6

原创 结构型模式--外观模式

1、概念为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。2、实践//待续

2020-10-25 15:57:29 6

原创 行为型模式--解释器模式

1、概念提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。2、实践//待续

2020-10-18 20:46:53 8

原创 go 知识点考察

1、题1:切片原理package mainimport "fmt"func main(){ s1 := []int{1,2,3} s2 := s1[1:] s2[1] = 4 fmt.Println(s1) s2 = append(s2,5,6,7) fmt.Println(s2)}运行结果:[1 2 4][2 4 5 6 7]2、题2:map无序package mainimport "fmt"func main(){ m := map[int]string

2020-10-18 20:13:19 22

原创 行为型模式--中介者模式

1、概念中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护。中介者模式属于行为型模式。2、实践//待续...

2020-10-18 19:40:15 10

原创 行为型模式--模板方法模式

1、概念在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。2、实践//待续

2020-10-18 15:27:53 7

原创 完全二叉树节点数

1、题目给定一棵完全二叉树的头节点head,返回这棵树的节点个数。如果完全二叉树的节点数为N,请实现时间复杂度低于O(N)的解法。2、解法1package mainimport . "nc_tools"/* * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } *//** * * @param head TreeNode类 * @return int整型*/fun

2020-10-18 12:43:36 42

原创 行为型模式--备忘录模式

1、概念备忘录模式(Memento Pattern)保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为型模式。2、实践//待续

2020-10-18 10:43:10 10

原创 行为型模式--观察者模式

1、概念定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。2、实践//待续

2020-10-18 09:01:24 43

原创 行为型模式--状态模式

1、概念在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。2、实践//待续

2020-10-17 23:12:49 11

原创 行为型模式--访问者模式

1、概念在访问者模式(Visitor Pattern)中,我们使用了一个访问者类,它改变了元素类的执行算法。通过这种方式,元素的执行算法可以随着访问者改变而改变。2、实践//实践

2020-10-17 21:19:38 14

原创 行为型模式--责任链模式

1、概念责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。2、实践//待续

2020-10-17 20:55:00 15

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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