- 博客(44)
- 资源 (1)
- 收藏
- 关注
原创 邓俊辉数据结构与算法学习笔记-第十二章
文章目录12.排序12. a1 快速排序算法12. a2 快速排序算法性能分析12. a3 快速排序变种12.b1 选取众数12.b3 选取通用算法12.c1 shell希尔排序12.c2 希尔排序逆序对12.排序12. a1 快速排序算法如上图,如何快速进行划分,找到轴点是关键。如何交换?成本多高?12. a2 快速排序算法性能分析快排的平均性能12. a3 快速排序变种之前的算法中,区间U是在L和G之间的。一轮遍历结束,找到了元素pivot的真正位置,只需要将lo处的pivot元
2021-06-05 22:10:18
260
1
原创 邓俊辉数据结构与算法学习笔记-第十一章
文章目录11.串11.a ADT11.b 串匹配11.b1 串匹配11.b2 蛮力匹配11.c KMP算法11.c1 KMP算法:从记忆力到预知力11.c2 KMP算法查表day6511.串11.a ADT真子串,真前缀,真后缀11.b 串匹配11.b1 串匹配因为如果采用随机算法,匹配成功的概率非常低,所以在测评算法复杂度时,将匹配失败和匹配成功分开考虑,分别计算算法复杂度。11.b2 蛮力匹配蛮力算法的效率之所以很低,是因为他不足以处理这种大量的局部匹配(前面都匹配成功,到最后匹配失
2021-06-05 20:32:08
479
2
原创 git详解
文章目录svn与git详解git实战常用git命令add,commit,status,fetch,push,rebase等rebase和merge的区别fetch和pull的区别cherry-pick,submodule,stash等功能
2021-05-04 16:53:08
136
原创 LSM-Tree
https://juejin.cn/post/6844903863758094343https://segmentfault.com/a/1190000039269078https://cloud.tencent.com/developer/article/1488439https://segmentfault.com/a/1190000021136424?utm_source=sf-similar-article
2021-04-19 17:46:29
1445
原创 pytorch官方文档60分钟入门笔记
文章目录1. 张量(Tensors)定义张量张量操作2.自动求导(autograd)变量Variable3.神经网络4. 训练一个分类器载入数据1. 张量(Tensors)tensors和numpy的ndarray类似,但是tensors可以使用GPU加快运算张量定义的matrix在未使用前的初始值就是那个内存地址保存的值定义张量#定义未初始化的张量x = torch.empty(5,3);#定义初始化的张量x = torch.rand(5,3);#随机初始化x = torch.zeros
2020-11-29 17:58:53
376
1
原创 邓俊辉数据结构与算法学习笔记-第十章
文章目录第十章 优先级队列10.a10.a1 需求与动机10.a2 基本实现10.b10.b1 完全二叉堆结构10.b2 完全二叉堆插入与上滤10.b3 完全二叉堆删除与下滤day61第十章 优先级队列10.a10.a1 需求与动机10.a2 基本实现实现:考虑 efficiency + cost(效率+成本)杀鸡焉用牛刀10.b10.b1 完全二叉堆结构Complete Binary Heap10.b2 完全二叉堆插入与上滤这一过程,即所谓的上滤(percolate up)在
2020-11-17 16:09:05
235
原创 邓俊辉数据结构与算法学习笔记-第七章
文章目录7 二叉搜索树7a. 概述7b7b-1 BST查找7b-2 BST插入7b-3 BST删除7c 平衡与等价day407 二叉搜索树7a. 概述BST: 二叉搜索树 ; BBST:平衡二叉搜索树7b7b-1 BST查找_hot记忆节点的语义:总是指向命中节点的父亲7b-2 BST插入上面插入算法的复杂度不会超过O(h),h为树的高度7b-3 BST删除上图为removeAt的可能情况之一:要删除的节点(69)有一颗子树为空,对应代码实现如下:上述①处代码也能够处理删除节点的左
2020-10-14 21:35:00
182
原创 《Java核心卷 I》第10版阅读笔记第十章(书第十四章)
文章目录第十章 并发10.1 什么是线程10.1.1 使用线程给其他任务提供机会10.2 中断线程第十章 并发多线程程序在较低的层次上扩展了多任务的概念:一个程序同时执行多个任务。通常, 每一个任务称为一个线程(thread), 它是线程控制的简称。可以同时运行一个以上线程的程序称为多线程程序(multithreaded)。多进程与多线程有哪些区别呢? 本质的区别在于每个进程拥有自己的一整套变量, 而线程则共享数据(有风险)。然而,共享变量使线程之间的通信比进程之间的通信更有效、更容易。此外, 在有
2020-10-05 21:23:31
419
原创 《Java核心卷 I》第10版阅读笔记第九章(书第十三章)
文章目录第九章 部署 Java 应用程序9.1 JAR 文件9.1.1 创建 JAR 文件9.1.2 清单文件9.1.3 可执行 JAR 文件9.1.4 资源9.1.5 密封9.2 应用首选项的存储9.2.1 属性映射9.2.2 首选项 API9.3 服务加载器day35第九章 部署 Java 应用程序9.1 JAR 文件在将应用程序进行打包时,使用者一定希望仅提供给其一个单独的文件,而不是一个含有大量类文件的目录,Java 归档(JAR) 文件就是为此目的而设计的。一个 JAR 文件既可以包含类
2020-10-04 11:15:49
127
原创 邓俊辉数据结构与算法学习笔记-第六章
文章目录图a 图a1 概述:邻接,相关a2 有向/无向图a3 路径 环路bb1-1 邻接矩阵-接口b1-2 邻接矩阵与关联矩阵b1-3 实例b1-4 顶点和边b1-5 邻接矩阵b1-6 顶点静态操作b1-7 边操作b1-8 顶点动态操作b1-9 综合评价c搜索c1 BFS化繁为简c2 策略c3 实现c4 可能情况c5 实例c6 多连通c7 复杂度c8 最短路径d 深度优先搜索d1 DFS算法d2 DFS框架d3 细节d4 无向图d5 有向图d6 多可达域d7 嵌套引理day25图a 图a1 概述:邻
2020-09-19 17:52:34
313
原创 邓俊辉数据结构与算法学习笔记-第五章
文章目录树aa1 树a2 应用a3 有根树a4 有序树a5 路径a6 连通图无环图a7 深度层次b 在计算机中表示b1 树的表示b2 父节点b3 孩子节点b4 父亲孩子表示法b5 长子兄弟表示法c 二叉树c1 二叉树概述c2 真二叉树c3 描述多叉树day21树aa1 树tree将二者的优点结合起来,树是列表的列表List< List>a2 应用层次关系的表示:表达式(如RPN),文件系统,URL,…a3 有根树a4 有序树a5 路径a6 连通图无环图根据上图右半部
2020-09-13 21:22:24
289
原创 邓俊辉数据结构与算法学习笔记-第四章
文章目录栈和队列a 栈的接口与实现a1 栈a2 实例a3 实现cc1-1 栈的典型应用c1-2 进制转换算法c1-3实现c2-1括号匹配实例c2-2 尝试c2-3c2-4 实现c2-5 反思c2-6栈和队列day17a 栈的接口与实现a1 栈a2 实例LIFO:后进先出a3 实现上图为基于向量模拟实现栈,其中入栈、出栈操作都是在向量末尾完成,复杂度是O(1),如果在向量首部实现入栈、出栈的话,复杂度就会变成O(n)cc1-1 栈的典型应用栈的典型应用场合c1-2 进制转换算法计算
2020-09-07 17:28:37
298
原创 邓俊辉数据结构与算法学习笔记-第三章
文章目录第三章 列表aa1 从静态到动态a2 从向量到列表a3 从秩到位置a4 实现bb1循秩访问b2 查找b3 插入和复制b4 删除与析构b5 唯一化c 有序列表c1 有序列表唯一化构思c2 唯一化实现c3 查找d 选择排序d1 选择排序d2 实例d3 实现d4 推敲d5 selectMaxd6 性能e 插入排序e1 插入排序e2 构思e3 对比e4 实例e5 实现e6 性能分析e7 平均性能e8 逆序对第三章 列表day 14aa1 从静态到动态a2 从向量到列表a3 从秩到位置a4
2020-09-04 22:25:30
228
原创 邓俊辉数据结构与算法学习笔记-第二章
文章目录第二章 向量a 接口与实现a1 接口与实现a2 向量ADTa3 操作实例a4 构造与析构a5 复制b 可扩充向量b1 可扩充向量b2 动态空间管理b3 递增式扩容b4 加倍式扩容b5 分摊复杂度 p42第二章 向量a 接口与实现a1 接口与实现a2 向量ADTa3 操作实例search接口,如果未找到对应的数,返回向量中不超过这个数的最大的数的index,如果都超过了这个数,返回-1,如果这个数重复多次,返回一系列index中最大的。a4 构造与析构a5 复制b 可扩充向量
2020-09-03 18:41:54
329
原创 邓俊辉数据结构与算法学习笔记-第一章
文章目录1.绪论a.计算b.算法1.绪论a.计算对象:规律、技巧目标:高效、低耗计算机是工具和手段,而计算才是目标绳索计算机及其算法(勾股定理)尺规计算及其算法(相似三角形)b.算法●计算 = 信息处理借助某种工具,遵照一定规则,以明确而机械的形式进行●算法,特定计算模型下,旨在解决特定问题的指令序列●算法:有穷性程序未必是算法...
2020-08-31 22:24:25
612
2
原创 《Java核心卷 I》第10版阅读笔记(书第7、8章)
文章目录6 异常、断言和曰志6.1 处理错误6.2 捕获异常6 异常、断言和曰志当出现异常时至少要做到:•向用户通告错误;•保存所有的工作结果;•允许用户以妥善的形式退出程6.1 处理错误为了在程序中处理异常情况,须研究程序中可能会出现的错误和问题, 以及哪类问题需要关注。● 用户输入错误●设备错误●物理限制●代码错误异常分类:异常对象都是派生于 Throwable 类的一个实例,如果 Java 中内置的异常类不能够满足需求,用户可以创建自己的异常类。●Error类层次结构描述
2020-08-29 17:10:30
230
原创 《Java核心卷 I》第10版阅读笔记(书前1-6章)
文章目录1.java程序设计概述2. java的基本程序设计结构文章代码链接:https://horstmann.com/corejava/1.java程序设计概述2. java的基本程序设计结构
2020-08-03 21:36:55
175
原创 Linux系统中的硬链接与软链接
文章目录1. 文件2.硬链接3.软连接4.软硬链接访问示意图参考:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/index.html1. 文件文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 L
2020-06-01 17:34:21
205
转载 大小端模式
参考:https://blog.csdn.net/richard1230/article/details/80857353假如有一个4字节的数据为 0x12 34 56 78(十 进制:305419896 ,0x12为高字节,0x78为低字节),若将其存放于地址0x4000 8000,则有:(32位系统中内存中一个每一个地址用四个字节表示,每一个地址里面存放一个字节)地址只代表存储数据的地方–所处在内存的位置,不能表示地址所指向内存区域的数据是几个字节的。1个内存单元的长度是8bits,即一个字节;32
2020-06-01 17:11:57
160
原创 TCP三次握手四次挥手
文章目录1.TCP报文字段定义2.TCP三次握手-建立连接2.1 过程详解2.2 常见问题3.四次挥手-断开连接3.1 过程详解3.2 常见问题参考:https://blog.csdn.net/qq_38950316/article/details/81087809https://blog.csdn.net/qzcsu/article/details/728618911.TCP报文字段定义TCP报文段的首部字段说明:序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字
2020-06-01 16:42:25
157
原创 分布式系统原理与应用复习
文章目录1 分布式系统简介1.1 分布式系统定义1.2 分布式系统目标1.3 常见分布式系统类型1 分布式系统简介1.1 分布式系统定义产生背景:应用驱动+技术支撑分布式系统优点:支持业务固有的分布性、经济性、性能提升、可靠性提升定义:分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像是单个相关系统。硬件角度:各个计算机是自治的,通过网络互联;软件角度:用户看到一台逻辑计算机。(互联、协作、单一视图)1.2 分布式系统目标(1)使远程资源可访问分布式系统的最主要目标是使用户能够方便
2020-05-27 22:38:43
2386
原创 Ubuntu16.0.4系统下CPU版本的warp-ctc编译
参考博文:https://blog.csdn.net/u010636181/article/details/80682877https://github.com/SeanNaren/warp-ctc/issues/101①安装gcc,cmake,git②安装anaconda,安装pytorch0.4.0(据说warp-ctc只支持0.4.0)安装:conda install ...
2019-12-01 21:07:05
204
原创 《learning from data》读书笔记---第三章: The Linear Model
Chapter 3 :The Linear Model三大块:classification problem ,regression and probability estimation3.1 Linear Classification二分类问题:利用线性分类器①因为线性模型的dvc = d + 1,由前面VC generalization bound 可得下列式子,由这...
2019-07-16 10:28:16
2326
7
原创 《learning from data》读书笔记---第二章: Training versus Testing
chapter2Training versus Testing学习资料与考试题目区别2.1 Theory of GeneralizationEout反映了模型的泛化能力,即模型对未知数据的预测能力Ein反映了在已知训练集的训练的成效( training performance)Generalization error 定义a tolerance level...
2019-07-09 22:15:11
484
原创 《learning from data》读书笔记---第一章: The Learning Problem
1 TheLearning Problemlearning from data instead of analytic solution1.1 Problem Setup电影推荐系统:需要给电影评分,以确定是否给用户推荐此电影模型基本步骤:基于之前的用户评分:1.构建向量描述电影 2.构建向量描述用户 3.计算这两个向量的相似度,预测评分It starts with r...
2019-07-05 11:31:49
817
原创 滑动窗口问题
博客参考https://www.cnblogs.com/grandyang/p/4340948.htmlleetcode--Minimum Window SubstringGiven a string S and a string T, find the minimum window in S which will contain all the characters in T in co...
2019-06-18 15:01:53
424
原创 工作流学习之activiti
参考:https://blog.csdn.net/u013087513/article/details/76714119Activiti核心API的使用:流程定义和流程实例的管理、流程变量、监听器①流程定义:设计流程定义文档,可以直接使用插件图形化界面进行设置说明:流程定义文档由两部分组成(1) bpmn文件流程规则文件。在部署后,每次系统启动时都会被解析,把内容封装成流程定义...
2018-10-09 15:40:52
248
转载 工作流学习之activiti
参考博客:https://blog.csdn.net/u013087513/article/details/76602344核心:业务过程的部分或整体在计算机应用环境下的自动化工作流框架的底层需要有数据库提供支持,Activiti框架底层使用的mybatis操作数据库。Activiti介绍覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。A...
2018-10-09 15:01:22
178
原创 c语言常用系统函数——缓冲区操作函数
参考:http://www.doc88.com/p-973196915823.html缓冲区操作函数(1)void *memccpy(void *dest,const void *src,int c,unsigned int count);从src所指的地址开始拷贝字节到dest中,当指定字符c已拷贝或已拷贝count个字节后停止。如果c未被拷贝,返回NULL,否则,返回dest中该字...
2018-09-06 20:12:54
1656
2
原创 机器学习笔记-standford公开课课程学习笔记
一、回归问题(regression)与分类问题(classification)的区别二者都属于监督式学习,回归问题和分类问题的本质一样,都是针对一个输入做出一个输出预测,其区别在于输出变量的类型。分类问题是指,给定一个输入,根据训练集推断它所对应的类别,是一种定性输出,也叫离散变量预测;通常是用来预测一个值,如预测房价、未来的天气情况等。回归问题是指,给定一个输入,根据训练集推断它所对应的输出值,...
2018-05-13 14:06:47
390
原创 c语言内存与指针问题
c语言内存与指针问题参考博文:https://www.cnblogs.com/coder2012/p/3150757.html一、c语言的内存分配与释放①局部变量,全局变量,静态变量在一个函数体内部声明的普通变量都是局部变量,局部变量会在栈上申请空间,函数结束后,申请的空间会自动释放。而全局变量是在函数体外申请的,会被存放在全局(静态区)上,知道程序结束后才会被结束,这样它的作用域就是整个程序。静...
2018-04-28 15:31:12
1265
原创 leetcode算法-Best Time to Buy and Sell Stock IV
leetcode算法-Best Time to Buy and Sell Stock IV题目:给定一个数组prices[n],其中prices[i]代表第i天股票的价格,限定最多进行k次交易(买进和卖出股票算一次交易),在卖出之前必须进行买入操作,求股票交易的最大收益。涉及算法:动态规划主要思路:(主要是看了大佬的加上自己的理解)我们需要一个数组dp[k+1][prices.length]来记录...
2018-03-24 17:59:32
126
原创 机器学习笔记-1.python基本语法
python学习笔记1①数据类型:整数,浮点数,字符串(''或者""包围),布尔值(true,false,计算and,or,not;Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True),空值(none)②print语句:在python交互环境下写代码,print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出,遇到逗号“,”会输出一个空格再...
2018-03-18 21:41:22
298
原创 leetcode:word search +word searchII总结
leetcode:word search +word searchII总结①word search:给定一个m x n的矩阵A[ ['A','B','C','E'], ['S','F','C','S'], ['A','D','E','E']],同时给定一个单词,例如word = "ABCCED", 在矩阵中任意连续不重复走动,若可以找到word对应的单词则返回true,否则返回false.主...
2018-03-15 12:40:13
811
原创 机器学习理论篇1
机器学习理论篇1(笔记)历史数据->规律(数学函数、数学公式刻画规律)->未来不确定场景决策数据分析(人为驱动)和机器学习(机器驱动)用数据替代专家大数据->数据变现离线机器学习(批处理)+在线机器学习(实时调整,电商、百度),二者算法稍有差异机器学习的典型应用:啤酒+尿布(关联规则)||用户细分精准营销(聚类)||垃圾邮件(朴素贝叶斯)||信用卡欺诈:用户风险识别(决策树)||...
2018-03-11 12:50:33
323
原创 linux下压缩包安装mysql5.7
linux下压缩包安装mysql5.7①安装包下载:http://dev.mysql.com//Downloads/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_64.tar②创建mysql的用户以及其所在的用户组[root@localhost ~]#groupadd mysql[root@localhost ~]#useradd -r -g mysql my...
2018-03-09 18:55:02
2231
jsonlib相关jar包
2018-09-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人