1

JS数据结构第五篇 --- 二叉树和二叉查找树

一、二叉树的基本概念 从逻辑结构角度来看,前面说的链表、栈、队列都是线性结构;而今天要了解的“二叉树”属于树形结构。 1.1 多叉树的基本概念,以上图中“多叉树”为例说明 节点:多叉树中的每一个点都叫节点;其中最上面的那个节点叫“根节点”; 父节点:节点1是节点2/3/4/5/6的父节点,然后节点2 ...

TDX 发布于 2019-08-19 00:51 评论(0)阅读(106)
5

.Net Core in Docker - 使用阿里云Codepipeline及阿里云容器镜像服务实现持续交付/部署(CD)

上一次演示了如何 "使用阿里云Codepipeline,阿里云容器镜像服务实现CI" ,讲到这里我们push一下代码后就自动编译、自动跑单元测试、自动构建镜像、自动推送镜像到私仓。那么离我们最初设定的目标只差那么一小步了,那就是自动部署到测试/生产环境,这一步就是持续交付/部署(CD)。 CD其实是 ...

Agile.Zhou 发布于 2019-08-19 00:51 评论(5)阅读(290)
0

深入剖析PHP7内核源码(一)- PHP架构与生命周期

PHP7 为什么这么快? 全新的zval 更节约的空间,栈上分配内存 zend_string 存储字符串的Hash值,数组查询的时候不需要进行Hash计算 在HashTable桶内直接存数据,减少了内存的申请次数,提升了cache命中率和内存访问速度 zend_parse_parameters改为了 ...

defmain 发布于 2019-08-18 23:53 评论(0)阅读(150)
0

go 学习笔记之数组还是切片都没什么不一样

Go 的数组和切片本质上并没有太大不同,只要理解了动态数组的实现也就明白了切片的含义.除此之外,Go 语言中没有 set 类型,这也是主流编程语言中十分少见的,不过 map 功能很强大,似乎又没必要存在 set 类型了. ...

雪之梦技术驿站 发布于 2019-08-18 23:44 评论(0)阅读(84)
0

100天搞定机器学习|day43 几张GIF理解K-均值聚类原理

前文推荐 "如何正确使用「K均值聚类」?" KMeans算法是典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。 K个初始聚类中心点的选取对聚类结果具有较大的影响,因为在该算法 ...

jpld 发布于 2019-08-18 23:28 评论(0)阅读(116)
1

wireshark抓包分析mybatis的sql参数化查询

我们使用jdbc操作数据库的时候,都习惯性地使用参数化的sql与数据库交互。因为参数化的sql有两大有点,其一,防止sql注入;其二,提高sql的执行性能(同一个connection共用一个的sql编译结果)。下面我们就通过mybatis来分析一下参数化sql的过程,以及和非参数化sql的不同。 注 ...

ismallboy 发布于 2019-08-18 23:21 评论(0)阅读(142)
0

JDK集合面试20问

1. HashMap的内部实现原理是什么? HashMap内部实现原理是数组+链表,通过散列算法将key值散列到数组中,如果到相同的位置,则通过拉链法解决散列冲突。在JDK8中新增了红黑树结构,当HashMap中的散列冲突链表结构超过8个数据时,会从链表结构转换为红黑树结构。 2. HashMap的 ...

OKevin 发布于 2019-08-18 23:10 评论(0)阅读(231)
0

Netty源码分析--内存模型(下)(十二)

这一节我们一起看下分配过程 上面的分配顺序,大家想一下为什么不是从q000开始分配呢?我找了一段分析的很好的。 在分析PoolChunkList的时候,我们知道一个chunk随着内存的不停释放,它本身会不停的往其所在的chunk list的prev list移动,直到其完全释放后被回收。 如果这里是 ...

Diligent_Watermelon 发布于 2019-08-18 23:07 评论(0)阅读(79)
0

@ConfigurationProperties 注解使用姿势,这一篇就够了

前言 在编写项目代码时,我们要求更灵活的配置,更好的模块化整合。在 Spring Boot 项目中,为满足以上要求,我们将大量的参数配置在 application.properties 或 application.yml 文件中,通过 @ConfigurationProperties 注解,我们可以 ...

纪莫 发布于 2019-08-18 23:03 评论(0)阅读(117)
0

100天搞定机器学习|day40-42 Tensorflow Keras识别猫狗

"100天搞定机器学习|1 38天" "100天搞定机器学习|day39 Tensorflow Keras手写数字识别" 前文我们用keras的Sequential 模型实现mnist手写数字识别,准确率0.9713。今天我们完成day40 42的课程,实现猫、狗的识别。 本文数据集下载地址 htt ...

jpld 发布于 2019-08-18 22:54 评论(0)阅读(103)
0

[Spring cloud 一步步实现广告系统] 20. 系统运行测试

系统运行 经过长时间的编码实现,我们的主体模块已经大致完成,因为之前我们都是零散的对各个微服务自行测试,接下来,我们需要将所有的服务模块进行联调测试,Let's do it. 清除测试数据&测试文件 我们在实现各个服务的过程中,添加了不少的测试文件和测试数据,为了不影响我们最终的展示效果,我们先将之 ...

IsaacZhang 发布于 2019-08-18 22:38 评论(0)阅读(115)
0

重学计算机组成原理(十一)- 门电路的"千里传音"

人用纸和笔来做运算,都是用十进制,直接用十进制和我们最熟悉的符号不是最简单么? 为什么计算机里我们最终要选择二进制呢? 来看看,计算机在硬件层面究竟是怎么表示二进制的,你就会明白,为什么计算机会选择二进制。 1 怎么做到“千里传书” 马拉松的故事相信你听说过。公元前490年,在雅典附近的马拉松海边, ...

JavaEdge 发布于 2019-08-18 22:34 评论(0)阅读(123)
2

The .NET World——gPRC概览

什么是gRPC "官方" 的定义: gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently connect services in ...

Ken.W 发布于 2019-08-18 21:42 评论(0)阅读(343)
0

从零写一个编译器(七):语义分析之符号表的数据结构

项目的完整代码在 "C2j Compiler" 前言 有关符号表的文件都在symboltable包里 前面我们通过完成一个LALR(1)有限状态自动机和一个reduce信息来构建了一个语法解析表,正式完成了C语言的语法解析。接下来就是进入语义分析部分,和在第二篇提到的一样,语义分析的主要任务就是生成 ...

dejavudwh 发布于 2019-08-18 21:00 评论(0)阅读(154)
2

Spring Boot整合Shiro

概述 4A(认证Authentication、授权Authorization、账号Account、审计Audit)是现代任何IT系统中很基础但非常重要的部分,无论是传统管理信息系统还是互联网项目,出于保护业务数据和应用自身的安全,都会设计自己的登录和资源授权策略。最近项目中需要登录和权限相关的功能, ...

fzsyw 发布于 2019-08-18 20:24 评论(2)阅读(210)
7

使用 .NET CORE 创建 项目模板,模板项目,Template

场景:日常工作中,你可能会碰到需要新建一个全新的解决方案的情况(如公司新起了一个新项目,需要有全新配套的后台程序),如果公司内部基础框架较多、解决方案需要DDD模式等,那么从新起项目到各种依赖引用到能实际可用,一大堆的配置都需要重新设定、测试,耗时耗力,根据项目的大小,往往可能需要 1 2 小时甚至 ...

DeepThought 发布于 2019-08-18 19:23 评论(2)阅读(621)
2

Window服务基于Quartz.Net组件实现定时任务调度(二)

前言: 在上一章中,我们通过利用控制台实现定时任务调度,已经大致了解了如何基于Quartz.Net组件实现任务,至少包括三部分:job(作业),trigger(触发器),scheduler(调度器)。其中job是需要在一个定时任务中具体执行的业务逻辑,trigger通过规定job何时并按照何种指定的 ...

艾三元 发布于 2019-08-18 19:23 评论(4)阅读(283)
61

谈谈surging 微服务引擎 2.0的链路跟踪和其它新增功能

一、前言 surging是基于.NET CORE 服务引擎。初始版本诞生于2017年6月份,经过NCC社区二年的孵化,2.0版本将在2019年08月28日进行发布,经历二年的发展,已经全部攘括了微服务架构的技术栈,覆盖了从服务注册、服务发现、中间件、协议主机再到链路跟踪,并且制定了一套微服务的规则, ...

fanly11 发布于 2019-08-18 19:12 评论(26)阅读(1922)
1

重学计算机组成原理(十)- "烫烫烫"乱码的由来

程序 = 算法 + 数据结构 对应到计算机的组成原理(硬件层面) 算法 各种计算机指令 数据结构 二进制数据 计算机用0/1组成的二进制,来表示所有信息 程序指令用到的机器码,是使用二进制表示的 存储在内存里面的字符串、整数、浮点数也都是用二进制表示的 万物在计算机里都是0和1,搞清楚各种数据在二进 ...

JavaEdge 发布于 2019-08-18 18:04 评论(0)阅读(206)
1

布隆过滤器简述及应用

一、布隆过滤器 1、维基百科 布隆过滤器(Bloom Filter)是1970年由布隆提出的。 实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。 优点是不需要存储 key,节省空间,空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除 ...

GeaoZhang 发布于 2019-08-18 17:55 评论(1)阅读(139)