自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猫ER

Better later than never.

  • 博客(399)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

原创 LeetCode小记

1.约瑟夫环问题描述:1.2.3...n做成一环,从第一个开始,报数报到k的人直接去死,问到最后剩下人的编号。解法:f[n] = (f[n-1]+k)%n2.

2022-05-05 09:43:34 77 3

原创 JAVA PriorityQueue优先队列

public class NODE{ int x; int y; public NODE (int x, int y) { this.x = x; this.y = y; } @Override public String toString() { return this.x + " " + this.y; }}public void PriorityQueueTemplate() { /.

2021-11-29 17:30:37 62

原创 洗牌算法Knuth

洗牌算法共有 n个不同的数,根据每个位置能够选择什么数,共有 n! 种组合。题目要求每次调用 shuffle 时等概率返回某个方案,或者说每个元素都够等概率出现在每个位置中。我们可以使用 KnuthKnuth 洗牌算法,在 O(n)O(n) 复杂度内等概率返回某个方案。具体的,我们从前往后尝试填充 [0, n - 1][0,n−1] 该填入什么数时,通过随机当前下标与(剩余的)哪个下标进行值交换来实现。对于下标 xx 而言,我们从 [x, n - 1][x,n−1] 中随机出一个位

2021-11-22 21:44:21 349

原创 图解-设计模式

1.工厂模式建造者模式装饰者模式适配器模式

2021-08-07 22:58:42 48

原创 UML图解

2021-08-04 22:49:05 60

原创 MyBatis 进阶

文章目录日志管理SLF4j与Logback添加日志1. 在pom.xml文件中添加依赖2. 自定义log打印模式动态SQL动态SQL的应用场景MyBatis二级缓存二级缓存运行规则二级缓存参数多表级联查询一对多step1:添加实体类step2:创建GoodsDetail的mapper配置文件step3:在Goods的配置文件中编写语句以及resultMapstep4:在my_batis.xml文件中配置新的goodsDetails的mapper测试代码多对一分页插件PageHepler使用步骤实际操作MyB

2021-07-13 09:27:11 91

原创 MyBatis解决方案:java.lang.NoClassDefFoundError: Could not initialize class......

报错:java.lang.NoClassDefFoundError: Could not initialize class com.pfeiking.mybatis.utils.MyBatisUtils原因:sql语句的xml文件写错了,只需要认证修改xml中的语法即可

2021-07-10 09:54:51 1052

原创 MyBatis 基础入门

文章目录1 MyBatis的开发流程1.1 引入MyBatis依赖(Maven)1.2 创建核心配置文件1.5 初始化SessionFactorySqlSessionFactorySqlSession初始化工具类MybatisUtils2 数据查询2.1 创建entity2.2 创建Mapper和编写\SQL标签2.3 开启驼峰命名映射2.4 SQL传参数查询 \传递单个参数,需要在goods.xml中添加select语句传递多个参数获取多表关联查询结果2.5 ResultMap结果映射3 数据写入3.1

2021-06-22 16:29:35 70

原创 GO基础-并发

目录Go 程信道带缓冲的信道range 和 closeselect 语句默认选择sync.MutexGo 程Go 程(goroutine)是由 Go 运行时管理的轻量级线程。go f(x, y, z)会启动一个新的 Go 程并执行f(x, y, z)f, x, y 和 z 的求值发生在当前的 Go 程中,而 f 的执行发生在新的 Go 程中。Go 程在相同的地址空间中运行,因此在访问共享的内存时必须进行同步。sync 包提供了这种能力,不过在 Go 中并不经常用到,因为还有其它的办法(见下

2021-05-31 10:57:51 59

原创 GO基础-方法和接口

目录方法方法即函数方法(续)指针接收者指针与函数方法与指针重定向方法与指针重定向(续)选择值或指针作为接收者接口接口与隐式实现接口值底层值为 nil 的接口值nil 接口值空接口类型断言类型选择Stringer错误Reader图像方法Go 没有类。不过你可以为结构体类型定义方法。方法就是一类带特殊的 接收者 参数的函数。方法接收者在它自己的参数列表内,位于 func 关键字和方法名之间。在此例中,Abs 方法拥有一个名为 v,类型为 Vertex 的接收者。package mainimpor

2021-05-28 20:54:26 78

原创 GO基础-struct、slice、映射

目录指针结构体结构体字段结构体指针结构体文法数组切片切片就像数组的引用切片文法切片的默认行为切片的长度与容量nil 切片用 make 创建切片切片的切片向切片追加元素Rangerange(续)映射 (`map`)映射 (`map`)映射的文法映射的文法(续)修改映射函数值函数的闭包练习:斐波纳契闭包指针Go 拥有指针。指针保存了值的内存地址。类型 *T 是指向 T 类型值的指针。其零值为 nil。var p *int& 操作符会生成一个指向其操作数的指针。i := 42p = &am

2021-05-27 11:10:21 264

原创 GO基础-流程控制语言

目录forfor(续)for 是 Go 中的 “while”无限循环ifif 的简短语句if 和 elseswitchswitch 的求值顺序没有条件的 switchdeferdefer 栈forGo 只有一种循环结构:for 循环。基本的 for 循环由三部分组成,它们用分号隔开:初始化语句:在第一次迭代前执行条件表达式:在每次迭代前求值后置语句:在每次迭代的结尾执行初始化语句通常为一句短变量声明,该变量声明仅在 for 语句的作用域中可见。一旦条件表达式的布尔值为 false,循环迭

2021-05-25 22:11:37 44

原创 GO基础-包、变量、函数

这里写自定义目录标题包导入导出名函数函数(续)多值返回命名返回值变量变量的初始化短变量声明基本类型零值类型转换类型推导常量数值常量包每个 Go 程序都是由包构成的。程序从 main 包开始运行。本程序通过导入路径 "fmt" 和 "math/rand" 来使用这两个包。按照约定,包名与导入路径的最后一个元素一致。例如,"math/rand" 包中的源码均以 package rand 语句开始。注意: 此程序的运行环境是固定的,因此 rand.Intn 总是会返回相同的数字。 (要得到不同的数字,

2021-05-25 21:55:54 81

原创 Go Module创建项目

这里写自定义目录标题1 Go Module模式1.1 开启Go Module1.2 初始化项目1.3 在项目里面导包1.4 修改导入包的版本1 Go Module模式Go Module简介1.1 开启Go Module查看go env。 go env另环境变量GO111MODULE为“on”状态。go env -w GO111MODULE=on,关闭状态为“off”。1.2 初始化项目TIP:不一定需要在$GOPAHT/src目录下建立项目在建立的文件夹下面创建go.mod文件。go

2021-05-20 16:26:17 398 2

原创 GO 反射机制

一、反射机制的定义在计算机科学中,反射指计算机程序在运行时(Run Time)可以访问、检测和修改它本身状态或者行为的一种能力。二、Go语言中反射机制的定义Go 语言提供了一种机制在运行时更新变量和检查它们的值、调用它们的方法,但是在编译时并不知道这些变量的具体类型,这称为反射机制。三、Go语言反射三大定律1、反射可以从接口值得到反射对象2、反射可以从反射对象获得接口值3、如果需要操作一个反射对象,则其值必须可以修改四、为什么需要反射机制1、场景:当函数接收到参数,但是该

2021-04-20 10:03:42 144

原创 TensorFlow2.0 模型部署

文章目录一、拉取TensorFlow Serving镜像二、模型打入TFServing镜像内部1.保存模型为pb格式2.将本地模型copy入镜像3.启动新的带有模型文件的镜像4.gRPC方式远程访问服务一、拉取TensorFlow Serving镜像docker pull tensorflow/serving如果需要gpu版本或者其他版本可以去Docker Hub自行选择。二、模型打入TFServing镜像内部1.保存模型为pb格式首先需要将tensorflow 模型保存为pb格式,通过如下代码

2020-12-11 10:13:36 759

原创 GO 错误处理与资源管理

文章目录0 前言1、资源管理与出错处理1.1 defer调用简单例子1简单例子22、出错处理概念2.1 自定义error3、服务器统一出错处理3.1 实现统一的错误处理逻辑4、panic和recover4.1 panic4.2 recover0 前言合理,成对使用1、资源管理与出错处理1.1 defer调用go语言是通过defer调用来实现资源管理的确保调用在函数结束时候发生简单例子1package mainimport "fmt"func tryDefer(){ defer

2020-11-18 19:32:49 173

原创 GO 函数式编程

文章目录1、函数式编程1.1 函数与闭包1.2 函数式编程 VS 函数指针1.2.1 “正统”函数式编程1.2.2 闭包1.2.2.1 python中的闭包1.2.2.2 c++中的闭包1.2.2.3 java中的闭包函数式编程样例一2.1 斐波那契数列2.2 为函数实现接口2.3 使用函数遍历二叉树2.4 go语言闭包的应用1、函数式编程1.1 函数与闭包经典样例func adder() func (value int) int{ sum := 0 return func(value in

2020-11-15 20:58:34 369

原创 GO 面向接口理论与实践

文章目录1、duck typing的概念1.1 接口1.2 duck typing概念1.2.1 python中的duck typing1.2.2 c++中的duck typing1.2.3 java中的类似代码1.2.4 go中的duck typing2、接口的定义和实现2.1 接口的实现3、接口的值类型3.1 接口变量里面有什么?3.2 获取接口里面的类型3.2.1 type assertion(类型断言)1、duck typing的概念1.1 接口相比较传统语言来说,go语言的接口更加的灵活t

2020-11-15 20:53:38 153

原创 GO 面向对象基础与实践

文章目录0、前言1、结构体和方法1.1 定义结构体1.2 结构体声明,初始化1.3 结构体中方法的定义与使用2、包和封装2.1 方法的封装2.2 包3、扩展已有类型4、GOPATH以及目录结构4.1 GOPATH环境变量4.2 获取第三方库-go get0、前言​ go语言仅支持封装,不支持继承和多态,而是通过接口形式实现多态。结构体到底是创建在堆上还是栈上,我们是不需要知道的,因为后面有完善的GC,当编译器看到如果返回的是变量,那么就认为是不需要将其保留给外部使用的,但是如果加上了取地址

2020-11-13 10:32:00 133

原创 TensorFlow2.0 迁移学习、抽取网络中的层输出

前言一些预训练好的模型,可以被用来当做特征提取器,如何使用成为关键。场景: 基于TF2.0提供的一些预训练好的2D图像分类网络,进行迁移学习。抽取网络basemodel = tf.keras.applications.ResNet50(weights='imagenet', input_shape=(224, 224, 3),

2020-10-26 19:40:04 1264 2

原创 TensorFlow2.0 去除琐碎的WARNING

尝试了网上很多种方法,无效,下面的针对TF2.X有效import tensorflow as tftf.compat.v1.logging.set_verbosity(tf.compat.v1.logging.ERROR)

2020-10-23 09:32:31 831 4

原创 TensorFlow2.0 大数据预处理Pipeline

目录一、为什么需要这样?二、如何解决?三、TF2.0提供的方法1、tf.data.Dataset中的map函数2、TFRecord一、为什么需要这样? 入门的时候,我们非常熟悉MNIST手写数字数据集,我们构建深度神经网络,比如CNN,MLP,LSTM等来训练数据集,我们一次性的加载了所有的数据集,然后不停地迭代训练。 当数据集非常大,大到50GB,100GB的时候,我们显然是不能将所有数据加载到内存空间的,不然的话硬件要求是非常苛刻的。...

2020-10-20 20:28:23 928

原创 GO 语言精准入门

目录一、变量1、语法:var 变量名称 变量类型2、如果定义变量的时候没有进行初始化,会使用默认初始值3、初始化声明 :=,下面两个方式是等价的4、因式分解关键字写法(一般用于全局变量)二、常量1、语法:const 常量名称 常量类型2、特殊的常量iota三、运算符四、基本逻辑语句1、条件语句2、循环语句五、函数1、语法2、和C++的不同之处3、注意点4、闭包5、方法一、变量1、语法:var 变量名称 变量类型var.

2020-10-05 21:19:53 146 1

原创 JDBC使用说明

一、JDBC定义JDBC(java连接、操作数据库):使用同意的一套java代码可以操作所有的关系型数据库(MySQL、Oracle、DB2)。定义了操作了所有关系型数据库的规则(规则就是“接口”sun定义),“接口”的实现由数据库厂商提供 “接口”的实现类叫做数据库驱动二、快速使用步骤导入驱动jar包:项目中创建一个libs,然后将驱动jar包存进去,然后右击libs选择add as library 注册驱动:Class.forName("com.mysql.jbdc.Driver"

2020-09-16 11:51:05 117

原创 DCL语言细节讲解

SQL分类:DDL:操作数据库和表 DML:增删改表中的数据 DQL:查询表中数据 DCL:管理用户,授权DBA:数据库管理员DCL:管理用户,授权1、管理用户 <1>添加用户: 语法:CREATE USER '用户名'@'主机名' INDENTIFIED BY '密码'; 例子:CREATE USER 'zhansan'@'localhost' INDENTIFIED BY '123'; CREATE US

2020-09-16 08:25:18 261

原创

类 = 属性+行为属性:该事物的状态信息行动:该事务能够做什么成员变量:直接定义在类当中,方法外成员方法:不要写static关键字使用类作为函数的输入参数:传入的是对象的地址值返回值类型是一个类:返回的是对象的地址值局部变量没有默认值,但是成员变量有默认值局部变量:随着方法进栈而诞生,随着方法出栈而消失成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失封装性:方法就是一种封装,关键字private也是一种封装,通过get/set方法间接访问private成员变量...

2020-08-09 21:24:40 90

原创 数组

package cn.itcast; // package 语句public class HelloWrold { public static void main(String[] args) { System.out.println("hello world!!!!!!"); /* 1.动态初始化(指定长度) 2.静态初始化(指定内容) */ // 1. 动态初始化 int[.

2020-08-09 20:17:37 96

原创 TensorFlow2.0 利用TFRecord存取数据集,分批次读取训练

目录头文件一、读取数据集(图片名)二、将数据集图片、标签写入TFRecord三、从TFRecord中读取数据集四、构建模型五、训练模型实验结果头文件import tensorflow as tfimport os一、读取数据集(图片名)data_dir = "D:/dataset/cats_and_dogs_filtered"train_cat_dir = data_dir + "/train/cats/"train_dog_dir = data_.

2020-06-23 18:24:31 2638 1

原创 TensorFlow2.0 分批读取数据集、训练

目录头文件一、处理数据集(dogs vs cats)二、自定义构建模型三、训练模型实验结果头文件import tensorflow as tfimport os一、处理数据集(dogs vs cats)data_dir = "D:/dataset/cats_and_dogs_filtered"train_cat_dir = data_dir + "/train/cats/"train_dog_dir = data_dir + "/train/dogs/".

2020-06-23 17:34:13 5083 12

原创 GluonTS 自定义模型预测时间序列

头文件import mxnet as mxfrom mxnet import gluonimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport jsonfrom gluonts.dataset.common import ListDataset1、继承gluon.HybridBlock类,自定义深度神经网络(隐藏层为【40, 40】的MLP)class MyTrainNetwork(gl

2020-06-17 10:32:12 1307 4

原创 GluonTS 快速预测时间序列

目录头文件1、定义数据集2、构建简单前馈网络(MLP)进行预测3、训练完成之后对测试数据预测进行评估4、对结果进行画图展示5、训练代码头文件import mxnet as mxfrom mxnet import gluonimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport jsonfrom gluonts.dataset.common import ListD.

2020-06-17 10:22:42 1403 1

原创 TensorFlow2.0 自定义层、自定义模块、自定义模型构建

头文件import numpy as npimport tensorflow as tfimport datetimeimport osfrom tensorflow.keras.layers import Dense, Flatten, Conv2D, MaxPool2D1、加载数据集def load_dataset(): mnist = np.load("mnist.npz") return mnist['x_train']/255.0, mnist['y_tr

2020-06-15 16:38:58 1688 2

原创 TensorFlow2.0 TensorBoard的使用

目录头文件1、加载数据集并处理2、构建模型3、训练模型4、查看TensorBoard头文件import numpy as npimport tensorflow as tfimport datetimeimport osfrom tensorflow.keras.layers import Dense, Flatten, Conv2D, MaxPool2Dfrom tensorflow.keras import Model1、加载数据集并处理def .

2020-06-12 15:55:31 1742 2

原创 TensorFlow2.0 自定义损失函数

目录头文件1、数据集加载与处理2、自定义深度神经网络模型3、自损失函数函数式类式实验结果头文件:import numpy as npimport tensorflow as tffrom tensorflow.keras.layers import Dense, Flatten, Conv2D, MaxPool2Dfrom tensorflow.keras import Model1、数据集加载与处理def load_dataset(): .

2020-06-12 10:25:37 4393 7

原创 TensorFlow2.0 自定义评估函数

目录头文件1、数据集获取和处理2、模型构建-采用类自定义模型构建编码方式3、自定义评估函数4、构建深度神经网络的训练模块5、将自定义评估函数应用到Keras的model.fit方式中头文件import numpy as npimport tensorflow as tffrom tensorflow.keras.layers import Dense, Flatten, Conv2D, MaxPool2Dfrom tensorflow.keras import Mo

2020-06-11 20:41:50 2167

原创 Java-多条件排序

对复杂结构体进行排序(JAVA里面没有结构体,对复杂类)定义如下内类NODEpublic class NODE{ int x, y; String str; public NODE(int x, int y, String str) { this.x = x; this.y = y; this.str = str; }} 通过实现借口Comparat...

2020-04-26 11:15:23 1624

原创 C++ String常规操作

1、获得长度int len = s.length();2、连接字符串s = s1 + s2;3、比较字符串s1 < s24、倒置串reverse(s.begin(), s.end());5、字符串转字符数组char* c = new char[30];strcpy(c, s.c_str());6、查找串(1)int pos = s1.find(...

2020-03-21 17:50:42 161

原创 C++ 互斥量、死锁

目录案例:共享数据:1、互斥量引入方法一:lock()、unlock()方法二:std::lock_guard()2、死锁解决方案:案例:游戏服务器,收到玩家的指令,然后处理指令,使用一个list容器来收集指令,用两个线程来维护接收、处理指令的操作。共享数据:如果对于共享数据是只读操作的话,不需要考虑互斥量问题 如果对共享数据需要进行读写操作的话...

2020-03-17 21:33:45 403

原创 C++ STL

目录一、lower_bound 和 upper_bound二、vector1.头文件2.初始化3.容量操作4.修改5.迭代器6.元素访问三、map1.头文件2.定义map3.数据的插入4.map的大小5.遍历6.查找7.删除8.交换9.排序一、lower_bound 和 upper_bound头文件#includ...

2020-03-13 19:46:21 164

PyAV-develop.zip

python 中的库 是 PyAV-develop.zip的压缩文件。针对于无法直接pip下载的用户。

2019-10-31

ELM能否直接训练阈值网络

TITTLE:能否直接训练阈值网络(threshold networks) Abstract: 1.具有阈值激活函数(threshold activation functions)的神经网络是非常客观的,因为易于硬件实现。 2.目前流行的基于梯度的学习算法不能用于训练这些网络(neural networks),因为 阈值函数(threshold functions)不可微的。 3.文献中的主要方法是通过sigmoid函数来逼近阈值激活函数的。 4.理论分析表明,ELM算法可以直接训练具有阈值函数的神经网络,而不必用sigmoid函数逼 近。 5.基于实际基准回归问题(real-world benchmark regression problems)的实验结果表明了 ELM的泛化性能优于阈值网络中使用到的其它算法。 6.ELM方法不需要控制变量(手动调节参数),而且速度更快。

2018-09-25

TCP NewReno对快速恢复算法的改进

详细讲述了TCP NewReno对快速恢复算法的改进。如何解决多包丢失的问题。

2018-06-02

TCP拥塞控制算法慢启动,拥塞避免,快速重传,快速恢复

要想更好的了解TCP端到端拥塞控制机制,首先要学习端到端拥塞控制的4个基本也是最主要的算法:slow_start, congestion avoidance, fast retransmit, fast recovery。

2018-06-02

UDP多客户端聊天文件传输源码

简单实现代码

2017-06-05

模拟进程管理课设(FCFS,SJF,时间片轮转调度法)

2016-07-02

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

TA关注的人

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