![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 92
这个饕字怎么读
你写的这是个锤子的博客?orz
展开
-
Java8 jdk1.8新特性
Record some significant JDK1.8 operationsLambdaanonymous inner class// Original solutionComparator<Integer> comparator1 = new Comparator<Integer>() { @Override public int compare(Integer o1, Integer o2) { return Integer.co.原创 2021-11-18 23:47:05 · 436 阅读 · 0 评论 -
Java并发与Java内存模型 --《Java并发编程的艺术》
Java 并发机制的底层实现原理Volatile 的应用定义:Java变成语言允许线程访问共享变量,为了确保共享变量能被准确和一致地更新,线程应该确保通过排它锁单独获得这个变量。几个术语:缓存行(cache line)是CPU缓存中可分配、操作的最小存储单元,就是获取一块内存数据,放入缓存,这块数据成为缓存行。缓存行填充:当处理器识别到从内存中读取操作数是可缓存的,处理器读取整个高速缓存行到适当的缓存(L1,L2,L3的或所有)缓存命中“如果进行高速缓存行填充操作的内存位置仍然是原创 2021-11-18 22:51:39 · 272 阅读 · 0 评论 -
AJAX 笔记 ajax
AJAX1. Use Nodejs and Expressthe basic use of express// 1. import expressconst express = require('express');// 2. create app objectconst app = express();// 3. create route ruleapp.get('/',(req, res)=>{ // set the response res.send('I L原创 2021-01-20 11:53:02 · 137 阅读 · 1 评论 -
node.js 笔记
因为切换输入法实在麻烦,能用英文写的都用英文写了。。。Node.js1. Modules Introducehttp module// export 'http' modulevar http = require('http');/** request: get the message that url transmit* response: give browser the response message** */http.createServer(function (re原创 2021-01-20 11:51:04 · 330 阅读 · 0 评论 -
SSM 整合笔记
SSM整合环境配置要手动导的包很多,还是maven好啊…db.propertiesjdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/ssm?serverTimezone=Hongkongjdbc.username=rootjdbc.password=cyt19880818web.xml 配置<?xml version="1.0" encoding="UTF-8"?><we原创 2021-01-20 11:45:43 · 148 阅读 · 0 评论 -
SpringMVC 笔记【下】
二、SpringMVC常用技术本节示例项目的准备与第一节大致一致:导包:添加全局配置文件:其中依赖包括:bean context mvc<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="原创 2021-01-20 11:34:26 · 145 阅读 · 1 评论 -
SpringMVC 笔记【上】
SpringMVC一、 SpringMVC核心技术1 HelloWorld1.1 导入依赖包1.2 配置 web.xml 的 DispatcherServlet在项目的web.xml中配置DispatcherServlet:<!-- The front controller of this Spring Web application, responsible for handling all application requests --><servlet>原创 2021-01-20 11:29:40 · 101 阅读 · 0 评论 -
ssm基础知识笔记 (Spring + Spring MVC + MyBatis)
这是本人学习 Spring + Spring MVC + MyBatis 所做的笔记,方便自己在以后需要时查阅翻看,对于正在学ssm基础的或者已经学过的各位希望可以提供帮助,共同学习。Spring 基础知识笔记【上】主要内容:依赖注入bean的实例化bean的作用域bean的生命周期Spring 基于xml的自动装配Spring 基于注解(Annotation)的装配Spring 基础知识笔记【下】主要内容:Spring AOPJDBC TemplateSpring 声明式原创 2020-10-23 11:44:11 · 182 阅读 · 0 评论 -
MyBatis基础知识笔记【下】
本篇博客内容:MyBatis 实现 “一对多” 查询MyBatis 实现 “多对多” 查询MyBatis 实现动态SQL8 一对多查询“一对多”对于“多对一”的那方其实操作和一对一完全一致,参照上两节,这里只举例一对多8.1 一对多关联查询8.1.1 类的设计public class User { private Integer userId; private String name; private Integer gender; private IdCard idCar原创 2020-10-23 00:56:50 · 275 阅读 · 0 评论 -
MyBatis基础知识笔记【中】
本篇博客内容:SQL语句的参数传递一对一关联查询一对一分步查询5 SQL语句的参数传递5.1 单个普通(基本/包装+String)参数这种情况 MyBatis 可直接使用这个参数,不需要经过任何处理。取值:#{随便写}例如我们add的代码中直接用 #{id}5.2 POJO(bean对象)当这些参数属于我们业务POJO时,我们直接传递POJO取值: #{POJO的属性名}例如delete,search其他例子5.3 多个参数5.3.1 Mybatis自动包装成 ma原创 2020-10-23 00:52:59 · 133 阅读 · 0 评论 -
MyBatis基础知识笔记【上】
本篇博客内容:初始配置流程基于Mapper接口开发MyBatis全局配置文件CRUD 增删改查操作1 初始配置流程实际开发不应用此方法1.1 导入相关包方便打印相关信息,加入 log4j.xml 配置文件至 classpath 下<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"><log4j:configuration原创 2020-10-23 00:39:54 · 167 阅读 · 0 评论 -
Spring 基础知识笔记【下】
本篇博客内容:Spring AOPJDBC Template声明式事务实现Spring AOPJDK 动态代理实现 AOP使用JDK动态代理需要动态代理的该类是一个接口的实现Service 接口package cyt.proxy;public interface UserService { public void register(); public void login(); public void changePasswd();}Service 接口的实现 S原创 2020-10-23 00:28:50 · 126 阅读 · 0 评论 -
Spring 基础知识笔记【上】
本篇博客内容:依赖注入bean的实例化bean的作用域bean的生命周期基于xml的自动装配基于注解(Annotation)的装配web HelloworldTestDao.javapackage dao;public interface TestDao { public void sayHello();}TestDaoImpl.javapackage dao;public class TestDaoImpl implements TestDao{ public原创 2020-10-23 00:21:21 · 119 阅读 · 0 评论 -
二叉树与图 LeetCode算法例子【总】
本文章记录贪心法的一些 LeetCode 题目,是我学习b站小象学院视频教程所做笔记,文末注明教程出处。侵删 ¯\_( ͡° ͜ʖ ͡°)_/¯LeetCode [113] 路径总和Ⅱ题目描述给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。说明: 叶子节点是指没有子节点的节点。示例给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13原创 2020-10-04 15:47:57 · 163 阅读 · 0 评论 -
递归-回溯-分治 LeetCode算法例子【总】
本文章记录贪心法的一些 LeetCode 题目,是我学习b站小象学院视频教程所做笔记,文末注明教程出处。侵删 ¯\_( ͡° ͜ʖ ͡°)_/¯LeetCode [78] 子集问题描述给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例输入: nums = [1,2,3]输出:[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]]递归与回溯方法算法思路图片来自小象学院教程算法代原创 2020-10-04 15:44:17 · 230 阅读 · 0 评论 -
贪心法LeetCode算法例子【总】
本文章记录贪心法的一些 LeetCode 题目,是我学习b站小象学院视频教程所做笔记,文末注明教程出处。侵删 ¯\_( ͡° ͜ʖ ͡°)_/¯LeetCode [455] 分发饼干问题描述假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这原创 2020-10-04 15:40:34 · 324 阅读 · 0 评论 -
【最大最小堆算法】求数组中第K大的元素 / 求数据中位数
C++ 的 STL 优先级队列构造最大最小堆的方式priority_queue<int> big_heap; // 默认构造最大堆priority_queue<int, vector<int>, greater<int>> small_heap; // 构造最小堆priority_queue<int, vector<int>, less<int>> big_heap2; // 构造最大堆优先级队列及其函数实例#原创 2020-08-10 14:00:31 · 613 阅读 · 0 评论 -
C++基本加减计算器堆栈实现 / 计算字符串表达式的值
问题:实现一个基本的计算器来计算一个简单的字符串表达式的值。字符串表达式可以包含左括号 ( ,右括号 ),加号 + ,减号 -,非负整数和空格 。使用用堆栈结构实现:用状态机的实现思路图:———— 图片来自小象学院教程// 计算函数void compute(stack<long>& number_stack, stack<char>& operation_stack) { if (number_stack.size() < 2)原创 2020-08-09 20:21:32 · 916 阅读 · 0 评论 -
用堆栈检查一个序列的顺序是否合法
例如:现有一个顺序序列是32541,入栈的序列为12345,检查32541是否合法算法如下:bool check_is_valid_order(std::queue<int>& order) { stack<int> S; int n = order.size(); for (int i = 0; i <= n; i++) { S.push(i); while (!S.empty()&&原创 2020-08-09 16:08:20 · 164 阅读 · 0 评论 -
用队列实现栈 / 用栈实现队列 / 实现带最小值的栈【C++】
C++的 STL stack和 STL queue头文件分别是 <stack> 和 <queue>注意:使用需要namespace stdSTL stack基本操作stack<int> S;S.empty();S.push(10);S.pop();STL queue基本操作queue<int> Q;Q.empty();Q.push(5);Q.pop();Q.front();用队列数据结构实现栈使用队列实现栈的下列操原创 2020-08-09 00:35:24 · 160 阅读 · 0 评论 -
多个有序链表的有序合并【C++】
问题描述:合并 k 个排序链表,返回合并后的排序链表可以有三个办法,在此问题上的基础是进行两个链表的合并,代码如下:struct ListNode { int val; ListNode* next; ListNode(int x) : val(x), next(NULL) {}};// 合并两个有序链表ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode temp_head(0);原创 2020-08-07 18:18:52 · 645 阅读 · 0 评论 -
复制带随机指针的链表算法【C++】
问题描述: 复制带随机指针的链表给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的 深拷贝。STL Map的使用int main() { map<Node*, int> node_map; Node a(5); Node b(3); Node c(6); a.next = &b; b.next = &c; a.random = &c; b原创 2020-08-07 18:16:37 · 204 阅读 · 0 评论 -
链表根据数值划分算法【C++】
给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。弄两个新的表头,一个储存小于特定值的节点,一个储存大于特定值的结点,再结合,简单的直接上代码:结点数据结构: // Definition for singly-linked list.struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next原创 2020-08-07 18:15:28 · 153 阅读 · 0 评论 -
简单链表求环算法问题【C++】
方法一:使用用C++的set库遍历链表逐一装入set集合,当出现一个结点已经收录在set中时,便找到了该节点// 算法写在一个类里class Solution {public: ListNode* detectCycle(ListNode* head) { set<ListNode*> node_set; while (head) { if (node_set.find(head) != node_set.e原创 2020-08-04 18:52:45 · 214 阅读 · 0 评论 -
C++求两个链表的交点
方法一,使用C++的set库set的使用方法:int main() { set<int> setA; const int lenA = 7; const int lenB = 8; int a[lenA] = { 5,1,4,8,10,1,3 }; int b[lenB] = { 2,7,6,3,1,6,0,1 }; for (int i = 0; i < lenA; i++) { setA.insert(a原创 2020-08-04 17:27:07 · 349 阅读 · 0 评论 -
MATLAB基础笔记7 统计和数据分析 / 曲线拟合和插值
MATLAB笔记7 统计和数据分析 / 曲线拟合和插值统计操作Mean算术平均, Median中位数, Mode中位数, and Quartile四分位数>> load stockreturns;x4 = stocks(:,4);>> mean(x4)ans = -5.8728e-04>> median(x4)ans = 0.0617>> mode(x4)ans = -5.8764>> qu原创 2020-08-04 15:59:49 · 755 阅读 · 0 评论 -
MATLAB基础笔记6 线性方程式和线性系统
MATLAB笔记6 线性方程式和线性系统线性方程rref() 高斯消去法???? + 2???? + ???? = 22???? + 6???? + ???? = 7???? + ???? + 4???? = 3⇒系数矩阵的增广矩阵1 2 1 22 6 1 71 1 4 3A = [1 2 1;2 6 1;1 1 4];b = [2; 7; 3];R = rref([A b])R = 1 0 0 -3 0 1 0原创 2020-08-04 15:55:00 · 388 阅读 · 0 评论 -
MATLAB基础笔记5 方程求根
MATLAB笔记5 方程求根符号求根符号声明>> syms xx + x + x(x + x + x)/4 ans = 3*x ans = (3*x)/4或者x=sym('x');x + x + x(x + x + x)/4可以看出syms更为简洁solve() 求方程根求该方程的根:???? = ???? ∙ sin(????) − ???? = 0syms xsolve('x*sin(x)-x', x)% MATLAB新版本不能加单原创 2020-08-04 15:53:08 · 1963 阅读 · 0 评论 -
MATLAB基础笔记4 导数/积分/微分操作
MATLAB笔记4 导数/积分/微分操作多项式导数积分多项式用row vector表示f(x) = x^3 - 2x -5 表示为:p = [1 0 -2 -5];polyval() 求多项式值a = [9,-5,3,7]; x = -2:0.01:5;f = polyval(a,x);plot(x,f,'LineWidth', 2);xlabel('x'); ylabel('f(x)');set(gca, 'FontSize', 14)polyder() 求导p=[5 0原创 2020-08-04 15:51:53 · 595 阅读 · 0 评论 -
MATLAB基础笔记3:数据类型和文件读写
MATLAB笔记3:数据类型和文件读写此篇笔记只记录较重要知识点,一些和其他编程语言相似不做记录数据类型String连接>> s1 = 'Example';s2 = 'String';>> s3 = [s1 s2]s3 = 'ExampleString'>> s4 = [s1;s2]错误使用 vertcat要串联的数组的维度不一致。以上s4会出错,因为两个字符串要纵向连接需要维度相同,即字符个数相同String筛选>原创 2020-08-04 15:50:18 · 415 阅读 · 0 评论 -
MATLAB基础笔记2:程序结构和方法
MATLAB笔记2:程序结构和方法Structured Programming & Function程序结构循环结构实例for i=1:10 x=linspace(0,10,101); plot(x,sin(x+i)); print(gcf,'-deps',strcat('plot',num2str(i),'.ps'));end逻辑运算符if-elseif condition1 statement1elseif condition原创 2020-08-04 15:48:29 · 251 阅读 · 0 评论 -
MATLAB基础笔记1:数组矩阵操作
MATLAB笔记1: Array Operation变量ans 变量sin(cos(pi))等于cos(pi)sin(ans)其他变量i,j: complex numberInf: ∞eps: 2.2204e-016NaN: not a numberpi: πx = 1/0 # 结果为 Infx = log(0) # 结果为 -Infx = inf/inf # 结果为 NaN数组Array (Vector and Matri原创 2020-08-04 15:43:55 · 196 阅读 · 0 评论 -
链表逆置算法 C++实现
链表逆置算法 C++实现链表结构:#include <iostream>using namespace std; // Definition for singly-linked list.struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {}};整个链表逆置:用一个新的空头指针,从第一个节点开始逐一接入新的头指针,新接入的节点的next为上一原创 2020-08-03 16:01:23 · 953 阅读 · 0 评论 -
Linux(vim)更改tab键缩进设置
参考https://www.jianshu.com/p/52fbe68cf6b6原创 2019-12-23 14:05:22 · 2756 阅读 · 0 评论