自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TsaiChasel

平日快乐

  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

原创 Tsai笔记:C++学习随性笔记(4)—— 亲自将十大排序算法总结(进阶版)

一.基本介绍一个算法在n规模下所消耗的时间消耗从大到小如下:O(1) < O(log n) < O(n) < O(n log n) < O(n ^ 2) < O(n ^ 3)指数级的增长是非常快的.二.常见的排序算法根据时间复杂度的不同,常见的算法可以分为3大类。1.O(n²) 的排序算法冒泡排序选择排序插入排序2.O(n log n) 的排序算法希尔排序归并排序快速排序堆排序3.线性的排序算法计数排序桶排序基数排序各种排序的具体

2020-09-17 15:23:52 250

原创 Tsai笔记:C++学习随性笔记(9)—— Protobuf序列化原理

Protobuf序列化原理一、Protobuf序列化原理简介1.1 序列化1.2 反序列化二、Protobuf编码方式2.1 Varint编码2.2 待补充一、Protobuf序列化原理简介1.1 序列化序列化是将数据结构或对象转换成二进制字节流的过程。Protobuf对于不同的字段类型采用不同的编码方式和数据存储方式对消息字段进行序列化,以确保得到高效紧凑的数据压缩。Protobuf序列化过程如下:(1)判断每个字段是否有设置值,有值才进行编码。(2)根据字段标识号与数据类型将字段值通过不同的

2020-09-09 18:12:07 408

原创 Tsai笔记:C++学习随性笔记(8)—— 按位与、或、异或等运算方法

一、按位与(&)1、运算规则0&0=0;0&1=0;1&0=0;1&1=1;即:两位同时为“1”,结果才为“1”,否则为02、运算用途清零。(与对应位置0进行与运算)例如:0110 0011 & 1111 0000 = 0110 0000 // 将低4位清零取一个数中指定位(与对应位置1进行与运算)例如:0110 0011 & 0000 1111 = 0000 0011 // 取低4位二、按位或(|)1、运算

2020-08-31 08:36:12 199

原创 Tsai笔记:Effective C++(2)—— 尽可能使用const

一、指针与const容易混淆的几个const指针const int p; //常变量const int* p; //数据是不可变,指针可变int const* p; //数据是不可变,指针可变int * const p; //指针是不可变,数据可变const int * const p; //指针是不可变,数据不

2020-08-26 09:54:15 175

原创 Tsai笔记:Effective C++(1)—— const、enum、inline

一、const二、enum三、inline1、用inline,不用宏#define进行类型检查inline发生在编译阶段,会做类型检查,消除了宏展开可能带来的语义隐患;#define f(x, y) (x*y)#define f(x, y) (xy)就会在 f(x+1,y)的时候f(x,y)就变成了x+1y2、用inline,不用函数节省调用的开销inline函数直接在当前frame展开函数代码,省掉了入栈和出栈的代码,所以会执行速度会快一些;int f(int a, int

2020-08-25 09:12:16 147

原创 Tsai笔记:C++学习随性笔记(7)—— 左值和右值 && move和forward

Tsai笔记:C++学习随性笔记(7)—— 左值和右值 && move和forward一直没搞懂左值和右值 && move和forward,看到知乎一个老哥的文章突然恍然大悟。话不多说,贴上连接:C++11朝码夕解: move和forward。后期有时间整理一份文章学习记录更加深刻理解。以下简单说明:背景(1) 问题: C++传值默认是copy、临时变量copy开销太大(2) 引入: rvalue, lvalue, rvalue reference概念(3) 方法

2020-08-02 11:45:41 141

原创 Tsai笔记:Git学习(1)—— 记录遇到的Git问题

Tsai笔记:Git学习(1)—— 记录遇到的Git1、git 在 GitHub 上创建一个项目并push本地项目遇到的问题a、登录 github 后,然后点击绿框中的 New repository 来新建一个项目仓库由上往下输入你项目的名字、项目的描述,选择这个项目是不是公开(Public)或私有(Private)。Initialize this repository with a README这个选项是问你要不要帮你根据你输入的项目名字和描述初始化一个项目(生成一个README的

2020-05-16 22:36:57 231

原创 Tsai笔记:C++学习随性笔记(5)—— 虎牙直播C++后台开发面试(已拿offer-》虎牙直播内推)

Tsai笔记:C++学习随性笔记(5)—— 虎牙直播C++后台开发面试(已拿offer)一、前言四大法宝:C++编程语言、计算机网络、设计模式、数据结构与算法 + 操作系统、网络编程、数据库待补充。。。二、技术一、二、三面总结(75min+45min+30min)注:Q:面试官,W:泛指内容注:有些问题可能忘记了,以下是面试官大部分提问的东西。Q:请简单自我介绍?W:每个技术面试官都会具体问项目的内容,以及深挖了里面的技术;还会让你找出你亮点最大的一个项目进行介绍?

2020-05-15 15:38:58 1741

原创 Tsai笔记:C++设计模式学习(7)—— 构建器(Builder)

Tsai笔记:C++设计模式学习(7)—— 构建器(Builder)设计模式的系列笔记链接如下:Tsai笔记:C++设计模式学习(1)—— 设计模式介绍及分类Tsai笔记:C++设计模式学习(2)—— 单例模式(Singleton)Tsai笔记:C++设计模式学习(3)—— 享元模式(Flyweight)Tsai笔记:C++设计模式学习(4)—— 工厂模式方法(Factory Method)Tsai笔记:C++设计模式学习(5)—— 抽象工厂模式(Abstract Facto.

2020-05-09 18:57:18 211

原创 Tsai笔记:C++设计模式学习(6)—— 原型模式(ProtoType)

Tsai笔记:C++设计模式学习(6)—— 原型模式(ProtoType)一、模式定义原型模式:使用原型实例指定创建对象的种类,然后通过拷贝这些原型来创建新的对象。 ——《设计模式》Gof二、要点总结ProtoType模型同样用于隔离对象的使用者和具体类型(易变类)之间的耦合关系,它同样要求这些“易变类”拥有“稳定的接口”。 ProtoType模型对于“如何创建易变类的实体对象”采用“原型克隆”的方法来做,它使得我们非常灵活地动态...

2020-05-09 17:49:03 205

原创 Tsai笔记:计算机网络学习(5)—— 第五章:传输层

Tsai笔记:计算机网络学习(5)—— 第五章:传输层转载于:【计算机网络】第四章:网络层Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述Tsai笔记:计算机网络学习(2)—— 第二章:物理层Tsai笔记:计算机网络学习(3)—— 第三章:数据链路层Tsai笔记:计算机网络学习(4)—— 第四章:网络层Tsai笔记:计算机网络学习(5)—— 第五章:传输层第五章 传输层->传输层协议UDP和TCP->网络安全->TCP可靠传输的实现-&

2020-05-09 11:32:11 342

原创 Tsai笔记:计算机网络学习(4)—— 第四章:网络层

Tsai笔记:计算机网络学习(4)—— 第四章:网络层Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述Tsai笔记:计算机网络学习(2)—— 第二章:物理层Tsai笔记:计算机网络学习(3)—— 第三章:数据链路层Tsai笔记:计算机网络学习(4)—— 第四章:网络层4.1 网络层提供的服务4.1.1 网络层的作用负责在不同的网络之间(基于数据包的IP地址)尽力转发数据包,不负责丢包重传和接收顺序。有点像送快递,一个人往另一个地方寄快递,每个快递走不同的路线,可能

2020-05-09 10:26:32 1118

原创 Tsai笔记:计算机网络学习(3)—— 第三章:数据链路层

Tsai笔记:计算机网络学习(3)—— 第三章:数据链路层Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述Tsai笔记:计算机网络学习(2)—— 第二章:物理层Tsai笔记:计算机网络学习(3)—— 第三章:数据链路层3.1 数据链路层的基本概念3.1.1 数据链路层的简单模型数据链路层不关心物理层解决的问题,只关心帧头帧尾和校验。3.1.1 数据链路层的信道类型->点到点信道:这种信道使用一对一的点对点通信方式。->广播信道:广播信道上的主机

2020-05-08 23:57:26 837

原创 Tsai笔记:计算机网络学习(2)—— 第二章:物理层

Tsai笔记:计算机网络学习(2)—— 第二章:物理层Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述Tsai笔记:计算机网络学习(2)—— 第二章:物理层2.1 物理层定义的标准物理层解决如何在链接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的主要任务:确定传输媒体的接口的一些特性,包括,机械特性:接口形状,大小,引线数量电气特性:例如规定电压范围(-5V-5V)功能特性:例如规定-5V上0,+5V是1过程特性:也称规程特性,规定建立连接时各个相关部

2020-05-08 23:37:58 505

原创 Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述

Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述转载于:【计算机网络】第一章:计算机网络概述Tsai笔记:计算机网络学习(1)—— 第一章:计算机网络概述局域网:覆盖范围小,自己花钱购买设备, 带宽固定10M 100M 1000M,自己维护,最远100m广域网:距离远(>100m),花钱租带宽internet:ISP是电信运营商internet service producer自己的机房,对网民提供访问Internet网站的访问:帧:数据包包括数

2020-05-08 23:17:20 565 1

原创 Tsai笔记:C++设计模式学习(5)—— 抽象工厂模式(Abstract Factory)

Tsai笔记:C++设计模式学习(5)—— 抽象工厂模式(Abstract Factory)一、模式定义抽象工厂模式:提供一个接口,让该接口负责创建一系列“相关或者相互依赖的对象”,无需指定它们具体的类。 ...

2020-05-06 21:11:18 183

原创 Tsai笔记:C++设计模式学习(4)—— 工厂模式方法(Factory Method)

Tsai笔记:C++设计模式学习(4)—— 工厂方法模式(Factory Method)一、模式定义享元模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使得一个类的实例化延迟(目的:解耦,手段:虚函数)到子类。。 ...

2020-05-06 18:09:52 230

原创 Tsai笔记:C++设计模式学习(3)—— 享元模式(Flyweight)

Tsai笔记:C++设计模式学习(3)—— 享元模式(Flyweight)一、模式定义享元模式:运用共享技术有效地支持大量细粒度的对象。 ——《设计模式》Gof二、要点总结待补充。。。...

2020-05-06 17:34:53 204

原创 Tsai笔记:C++设计模式学习(2)—— 单例模式(Singleton)

Tsai笔记:C++设计模式学习(1)—— 单例模式(Singleton)一、模式定义单例模式:保证一个类仅有一个实例,并提供一个该实例的全局访问点。 ——《设计模式》Gof二、要点总结1、Singleton模式中的实例构造器可以设置为protected以允许子类派生;2、Sing...

2020-05-06 11:56:09 239

原创 Tsai笔记:C++设计模式学习(1)—— 设计模式介绍及分类

Tsai笔记:C++设计模式学习(1)—— 设计模式介绍及分类一、什么是设计模式 “每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动”。 ...

2020-05-06 11:31:35 293

原创 Tsai笔记:MySQL学习(3)—— DML语言(数据操纵语句)

Tsai笔记:MySQL学习(3)—— DML语言(数据操纵语句)常用的语句关键字有:SELECT,INSERT,UPDATE,DELETE,MERGE,CALL,EXPLAIN PLAN,LOCK TABLE,包括通用性的增删改查。

2020-05-04 22:59:35 164

原创 Tsai笔记:MySQL学习(2)—— DDL语言(数据库定义语句)

Tsai笔记:MySQL学习(2)—— DDL语言(数据库定义语句)一、库的管理(create、alter、drop)1、创建库(create)create database 【if not exists】 库名【 character set 字符集名】;例:CREATE DATABASE IF NOT EXISTS books;2、修改库(alter)alter data...

2020-05-04 22:03:04 401

原创 Tsai笔记:MySQL学习(1)—— MySQL简单介绍

Tsai笔记:MySQL学习(1)—— MySQL简单介绍一、数据库的相关概念一、数据库的好处1、可以持久化数据到本地2、结构化查询二、数据库的常见概念1、DB:数据库,存储数据的容器2、DBMS:数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理DB3、SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有主流数据库软件通用的语言三、数...

2020-05-04 20:58:37 145

原创 Tsai笔记:MySQL学习(2)—— 查询练习

Tsai笔记:MySQL学习(2)—— 查询练习一、准备数据-- 创建数据库CREATE DATABASE select_test;-- 切换数据库USE select_test;-- 创建学生表CREATE TABLE student ( no VARCHAR(20) PRIMARY KEY, name VARCHAR(20) NOT NULL, s...

2020-05-03 12:12:13 263

原创 Tsai笔记:MySQL学习(1)—— 基本操作

Tsai笔记:MySQL学习(1)—— 基本操作连接SQL:net start mysql 登陆MySQL:mysql -u root -p 输入密码 退出数据库服务器:exit; 呈现数据库列表:show databases; 选中需要操作的对象:usedatabasesName; 筛选操作:select * from mysql; 创建自己的一个数据库:create da...

2020-05-02 18:20:16 234

原创 Tsai笔记:LeetCode笔记(1)—— 链表

Tsai笔记:LeetCode笔记(1)—— 链表一、相关题型 1. 找出两个链表的交点 2. 链表反转 3. 归并两个有序的链表 4. 从有序链表中删除重复节点 5. 删除链表的倒数第 n 个节点 6. 交换链表中的相邻结点 7. 链表求和I 8. 链表求和II 9. 回文链表 10. 分隔链...

2020-04-19 14:07:42 179

原创 Tsai笔记:前端学习路线(7)—— Mark

Tsai笔记:前段学习路线(7)—— Mark第一 CSS篇 1. 2个小时的时间去看html 就学会<html><head><body><div><lable><input><p><input>就够了2.4个小时的时间去看CSS 就学会 color,position就够了,花点时间看一下盒...

2020-04-10 15:31:39 159

原创 Tsai笔记:C++学习随性笔记(6)—— hashmap (现在已包含在STL中unordered_map)

Tsai笔记:C++学习随性笔记(6)—— hashmap一.介绍1.1 特性关联性:通过key去检索value,而不是通过绝对地址(和顺序容器不同) 无序性:使用hash表存储,内部无序 Map : 每个值对应一个键值 键唯一性:不存在两个元素的键一样 动态内存管理:使用内存管理模型来动态管理所需要的内存空间1.2 Hashtable和bucket 由于u...

2020-03-28 18:05:44 169

原创 Tsai笔记:C++学习随性笔记(5)—— 华为面试题目总结

Tsai笔记:C++学习随性笔记(5)—— 华为面试题目总结一.在一个二维01矩阵中找到全为1的最大正方形,返回其面积。如以下样例样例:返回 4(2*2)解题思想 先构造一个辅助矩阵tmp,把matrix矩阵的第一行和第一列元素直接复制; 对于剩下元素,若matrix[i][j]=0, 则tmp[i][j]=0;若matrix[i][j]=1,则tmp[i][j]= m...

2020-03-28 13:43:51 268

原创 Tsai笔记:C++学习随性笔记(4)—— 亲自将十大排序算法总结

Tsai笔记:C++学习随性笔记(4)—— 亲自将十大排序算法总结一.基本介绍 一个算法在n规模下所消耗的时间消耗从大到小如下: O(1) < O(log n) < O(n) < O(n log n) < O(n2) < O(n3) < O(2n)指数级的增长是非常快的.二.常见的排序算法根据时间复杂度的不同,常...

2020-03-27 14:31:28 173

原创 Tsai笔记:C++学习随性笔记(3)—— 腾讯面试题目总结

Tsai笔记:C++学习随性笔记(3)—— 腾讯面试题目总结1、有几种内存空间,及其区别?(隐含问题:栈和堆内存、静态和动态空间区别) 1.栈区(stack):由编译器自动分配释放,存放函数参数值,局部变量值等,其操作方式类似于数据结构的栈。 2.堆区(heap):由程序员分配释放,若程序员不释放的话,程序结束时可能由系统回收,值得注意的是他与数据结构的堆是两回事,分配方式...

2020-03-13 00:06:48 380

原创 Tsai笔记:Python学习随性笔记(1)—— 用pyinstaller生成可执行文件exe及遇到的问题

Tsai笔记:Python学习随性笔记(1)—— 用pyinstaller生成可执行文件exe及遇到的问题Tsai三步。(第一步,功能说明。第二步,结果图显示。第三步,代码展示)第一步,功能说明。在Python入门中,很多人都要自己写简单的脚本方便实现机械式的工作,最后最重要的就是将写好的脚本全部打包成一个.exe可执行文件。这里我使用的是PyInstaller进行封装。(查找过许多方...

2019-07-14 10:22:38 477

原创 Tsai笔记:GPOPS学习笔记(1)—— 高斯伪谱法的最基本优化方程求解思路(例子介绍)

Tsai笔记:GPOPS学习笔记(1)—— 高斯伪谱法的最基本优化方程求解思路(例子介绍)Tsai三步。(第一步,基本说明。第二步,结果图显示。第三步,代码展示。)第一步,基本说明。A、问题说明:系统运动微分方程、初始状态、控制变量及其目标函数为用最小值原理求u*,使得J达到最小值。B、基本步骤说明:写出主函数main,cost函数和dae函数。main函数基本框架为:...

2019-03-24 21:57:23 21365 12

原创 Tsai笔记:C++学习随性笔记(2)—— 数据结构:顺序表的基本操作

Tsai笔记:C++学习随性笔记(2)—— 数据结构:顺序表的基本操作Tsai三步。(第一步,功能说明。第二步,结果图显示。第三步,代码展示)第一步,功能说明。1、线性表的顺序存储 线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素,使得线性表在逻辑结构上相邻的元素存储在连续的物理存储单元中,即:通过数据元素物理存储的连续性来反应元素之间逻辑上的相...

2019-03-13 21:43:21 457

原创 Tsai分享:资源分享(1)——视觉SLAM十四讲及视频

Tsai分享:资源分享(1)——视觉SLAM十四讲及视频一、视觉SLAM十四讲如若转载请附上链接:https://blog.csdn.net/weixin_43338642/article/details/88287121链接:https://pan.baidu.com/s/1m6AQNz2ujCFVoJUtMe9TBg提取码:91e0二、SLAM 视频教程链接...

2019-03-07 10:13:53 22252 55

原创 Tsai笔记:C++学习随性笔记(1)—— template函数模板

Tsai笔记:C++学习随性笔记(1)—— template函数模板Tsai三步。(第一步,功能说明。第二步,结果图显示。第三步,代码展示)第一步,功能说明。在c++入门中,很多人会接触swap(int &amp;a, int &amp;b)这样的函数类似代码如下:void swap(int &amp;a , int &amp;b) { int temp = a; ...

2019-03-06 17:23:21 328

原创 Tsai日常:Windows + Ubuntu 16.04双系统 适合小白安装

详细教程教你装Windows + Ubuntu 16.04双系统Windows + Ubuntu 16.04双系统 适合小白安装前言:本篇文章本人Tsai拟写,如有转载请附上转载链接。这次自己从头到尾把双系统安装上首先要感谢好朋友刘杰!没有在他的指导下,恐怕我对里面的步骤还是一知半解,写这篇博客也是为了更多像我一样的小白知道安装Ubuntu其实没那么难~该文章大部分图片是自己现成截图的,部...

2018-11-07 11:31:41 1119

2018GPOPS工具、例子、官方手册、安装方法

2018年整理的GPOPS工具、例子、官方手册、安装方法,里面有很多例子。 高斯伪谱法的直白详细介绍 入门请看,高斯伪谱法的直白详细介绍 大不懂的可以留言问我

2018-10-26

空空如也

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

TA关注的人

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