自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaScript 学习总结

前言最近在用 JavaScript 进行前后端开发(后端使用Express框架),是一门很有趣的编程语言。探索过程中发现是不错的学习资料,故开始阅读并进行简单总结。文末附上了一些有助学习JS/ES/Express的链接。JavaScript 简介JavaScript ( JS ) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web 页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,例如 Node.js、 Apache CouchDB 和 Adobe Acrob

2020-12-19 16:12:24 600 2

原创 MongoDB - mongoose:Schema与Model,CURD操作

mongoose API Docs1 Require & Connectvar mongoose = require('mongoose');mongoose.connect('mongodb://127.0.0.1/db_name', {useNewUrlParser: true});2 Define Schema创建Schema对象var Schema = mongoose.Schema;var stuSchema = new Schema({ name: String,

2020-10-02 18:02:22 440

原创 MongoDB - 聚合运算:group(), aggregate(), mapReduce()

1 区别group() - 分组统计aggregate() - 简单聚合mapReduce() - 强大统计group 需要手写聚合函数的业务逻辑group 不支持分布式运算分布式可以用 aggregate (version 2.2)或者 mapReduce (version 2.4)2 语法group()db.collection_name.group({ key: {key1: 1, key2: 2}, //分组字段 cond: {}, //查询条件 reduce: f

2020-10-02 15:21:39 450

原创 浅谈数据库索引结构 - B树与B+树

1 概述索引(index)是帮助mysql高效获取数据的数据结构,以某种方式引用(指向)数据,这样就可以实现高级查找算法。图1为数据表,一共有两列七条数据,最左边的是数据记录的物理地址(在逻辑上相邻的记录在磁盘上并不一定是物理相邻的)。为了加快Col2的查找,可以维护一个图2所示的二叉查找树,每个节点分别包含索引键值和一个指向对应数据记录物理地址的指针,这样就可以运用二叉查找快速获取相应的数据。2 优劣势优势:提高数据检索的效率,降低数据库的IO成本。通过索引列对数据进行排序,降低数据排序的

2020-09-26 19:59:44 272

原创 Java1.7 HashMap源码解读

Java1.7 HashMapJava1.7中的HashMap是经典的哈希表实现,即数组+链表。以下针对一些面试中常见的问题,通过解读源码寻找答案。初始桶空间(16) 是在创建HashMap对象时开辟吗?创造一个HashMap对象时,还未开辟16个默认的桶空间;第一次调用put方法时才会开辟空间。参考源码,构造函数调用的init()方法是空的。// 构造函数public HashMap() { this(DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACT

2020-09-06 16:04:54 166

原创 Java与JSON

JSON: JavaScript Object Notation, 即JS对象简谱,是一种轻量级的数据交换格式。JSON格式{ "name":"张三". "age":18, "friends":["李四","王二",{ "name":"麻子", "age":"20" }]}JSON解析1. Gson将对象转换为JSON格式的字符串:public static void main(String[] args){ // 1. 创建Gson对象 Gs

2020-08-29 20:46:10 240

原创 Java学习笔记 - 5 多线程

5 多线程5.1 线程与进程进程:一个内存中运行的应用程序每个进程都有一个独立的内存空间线程:是进程中的一个执行路径拥有自己的栈空间,共享一个内存空间(共用一份堆内存)一个进程至少有一个线程,线程之间可以自由切换,并发执行5.2 线程调度分时调度:所有线程轮流使用CPU的使用权,平均分配每个线程占用CPU的时间抢占式调度(Java):优先让优先级高的线程使用CPU,优先级相同则随机选择一个线程CPU在多个进程间高速切换;某个时刻只能执行一个线程多线程程序并能提高程序的

2020-08-26 21:33:54 158

原创 反转链表及相关算法题

反转链表是链表的一个常用操作,一些算法题中也需要用到此操作,是值得学习探讨的。1 反转链表剑指 Offer 24. 反转链表题目描述:定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL涉及到链表的操作,我们可以先在纸上画出过程,写程序时思路会更清晰根据以上图解,思路主要为两个步骤循环操作:将当前节点next

2020-08-23 16:16:06 134

原创 Java学习笔记 - 4 Java核心类库

4 Java 核心类库4.1 泛型泛型,即“参数化类型”。就是将原来具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。作用:提高代码的复用率泛型中的类型在使用时指定,不需要强制类型转换(类型安全,编译器会检查类型)泛型类public class ClassName<T> { private T data; public T getData() { r

2020-08-23 14:14:10 210

原创 Java学习笔记 - 3 面向对象

3 面向对象3.1 概述面向对象:把相关的数据和方法组织为一个整体来看待面向过程关注的是执行的过程,面向对象关注的是具备功能的对象例子问:把大象装进冰箱 , 需要分几步?面向过程回答:3步:1把冰箱门打开, 2把大象装进去 , 3把冰箱门关闭面向对象回答:2步:1招一个能操作冰箱的工人(对象),2指挥工人装大象如果问题改成: 把100只大象依次关进冰箱,共分为几步?面向过程的回答:循环100次面向对象的回答还是2步:1招一个能操作冰箱的工人(对象) , 2指挥工人把大象依次装进去。

2020-08-23 14:09:28 108

原创 Java学习笔记 - 2 Java基础

2 Java 基础2.1 变量与数据类型变量按被声明的位置划分:局部变量:方法或语句块内部定义的变量成员变量:方法外部、类的内部定义的变量注意:类的外面不能有变量的声明按数据类型划分:基本数据类型变量引用数据类型变量基本数据类型类型占用内存 (byte)取值范围默认值整数型 int4[-2^31, 2^31-1] (20亿)0短整数型 short2[-2^15, 2^15-1]0长整数型 long8[-2^63

2020-08-23 14:08:34 124

原创 Java学习笔记 - 1 Java 体系与特点

Java学习笔记1 Java 体系与特点1.1 Java可以做什么1.2 Java的特性1.3 JDK与JRE1.4 Java跨平台原理1.5 Java的两种核心机制JVMGC2 Java 基础2.1 变量与数据类型变量基本数据类型引用数据类型类型转换二进制ASCII码2.2 权限修饰符2.3 运算符2.4 程序执行结构顺序结构分支结构循环结构练习:图形打印2.5 数组创建格式二维数组数组常见算法冒泡排序二分查找3 面向对象3.1 概述例子三大思想三大特征3.2 类与对象二者关系类、属性、方法的定义对象的创

2020-08-16 14:16:44 109

原创 从前/后序与中序遍历构造二叉树

前/后序与中序遍历构造二叉树从前序与中序遍历序列构造二叉树(LeetCode105 / 剑指Offer 07)从中序与后序遍历序列构造二叉树(LeetCode106)(假设树中没有重复的元素)前序遍历:根节点-左子树-右子树中序遍历:左子树-根节点-右子树后序遍历:左子树-右子树-根节点解法1:递归通过 前/后序遍历 得到 根节点在 中序遍历 中找到 根节点的位置(索引 i)i 的左边就是左子树的节点,右边就是右子树的节点通过 左子树长度 划分 前/后序遍历 中的 左右子树递

2020-08-12 15:22:38 562

空空如也

空空如也

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

TA关注的人

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