2021 05-17

【js】Leetcode每日一题-二叉树的堂兄弟节点

【js】Leetcode每日一题-二叉树的堂兄弟节点 【题目描述】 在二叉树中,根节点位于深度0处,每个深度为k的节点的子节点位于深度k+1处。 如果二叉树的两个节点深度相同,但父节点不同,则它们是一对堂兄弟节点。 我们给出了具有唯一值的二叉树的根节点root,以及树中两个不同节点的值x和y。 只有与值x和y对应的节点是堂兄弟节点时,才返回true。否则,返回false。 示例1: 输入:root=[1,2,3,4],x=4,y=3 输出:false 示例2: 输入:root=[1,2,3

2021 05-17

从执行上下文(ES3,ES5)的角度来理解"闭包"

目录 介绍执行上下文和执行上下文栈概念 执行上下文 执行上下文栈 伪代码模拟分析以下代码中执行上下文栈的行为 代码模拟实现栈的执行过程 通过ES3提出的老概念—理解执行上下文 1.变量对象和活动对象 全局上下文中的变量对象 函数上下文中的变量对象 2.词法作用域 3.作用域链 4.活学活用—案例分析 通过ES5提出的新概念—理解执行上下文 创建阶段 执行阶段 执行上下文总结 闭包 闭包是什么? 闭包的形成与实现 闭包有什么用? 1.模拟私有属性、方法 2.工厂函

2021 05-17

推荐系统论文之序列推荐:KERL

KERL:AKnowledge-GuidedReinforcementLearningModelforSequentialRecommendation 摘要 ‍时序推荐是基于用户的顺序行为,对未来的行为进行预测的任务。目前的工作利用深度学习技术的优势,取得了很好的效果。但是这些工作仅专注于所推荐商品的局部收益,并未考虑该商品对于序列长期的影响。 强化学习(RL)通过最大化长期回报为这一问题提供了一个可能的解决方案。但是,在时推荐场景中,用户与商品交互的稀疏性,动态性增加了强化学习的随机探索的难度

2021 05-17

C++多态

本章内容旨在解决以下几个问题: 什么是C++多态,C++多态的实现原理是什么 什么是虚函数,虚函数的实现原理是什么 什么是虚表,虚表的内存结构布局如何,虚表的第一项(或第二项)是什么 菱形继承(类D同时继承B和C,B和C又继承自A)体系下,虚表在各个类中的布局如何,如果类B和类C同时有一个成员变了m,m如何在D对象的内存地址上分布的,是否会相互覆盖 存在虚函数的类对象size计算 什么是C++多态,C++多态的实现原理是什么 在C++程序设计中,多态性是指具有不同功能的函数可以用同一个函数名

2021 05-17

SpringBoot系列——Activiti7工作流引擎

  前言   工作流程是我们日常开发项目中常见的功能,本文记录springboot整合activiti7。     Activiti介绍   官网:https://www.activiti.org     数据库表   act_hi_*:'hi’表示history,此前缀的表包含历史数据,如历史(结束)流程实例,变量,任务等等。   act_ge_*:'ge’表示general,此前缀的表为通用数据,用于不同场景中。   act_evt_*:'evt’表示event,此前缀的

2021 05-17

Python数模笔记-(1)NetworkX 图的操作

1、NetworkX图论与网络工具包 NetworkX是基于Python语言的图论与复杂网络工具包,用于创建、操作和研究复杂网络的结构、动力学和功能。 NetworkX可以以标准和非标准的数据格式描述图与网络,生成图与网络,分析网络结构,构建网络模型,设计网络算法,绘制网络图形。 NetworkX提供了图形的类、对象、图形生成器、网络生成器、绘图工具,内置了常用的图论和网络分析算法,可以进行图和网络的建模、分析和仿真。 NetworkX的官网和文档 官网地址:https://networkx.

2021 05-17

理解微信小程序的双线程模型

有过微信小程序开发经验的朋友应该都知道“双线程模型”这个概念,本文简单梳理一下双线程模型的一些科普知识,学识浅薄,若有错误欢迎指正。 我以前就职于「小程序·云开发」团队,在对外的一些培训和技术分享里经常被人问到这样一个问题:“微信小程序与Web网站在技术层面的主要区别是什么?”,在编程语言和范式上,小程序开发与Web前端开发非常相似(比如都用JavaScript语言、与HTML/CSS非常相似的WXML/WXSS等),可它却没有直接用原生的前端技术。 与Web网站相比,以微信为宿主的小程序更需要

2021 05-17

iNeuOS工业互联平台,WEB组态(iNeuView)增加动态图元,例如液位

目      录 1.     概述...2 2.     平台演示...2 3.     应用过程...2 4.     实现动态图元的效果...3 1.  概述     最

2021 05-17

【Mybatis源码解析】- 整体架构及原理

整体架构 version-3.5.5 在深入了解Mybatis的源码之前,我们先了解一下Mybatis的整体架构和工作原理,这样有助于我们在阅读源码过程中了解思路和流程。 核心流程 在上一遍的入门程序中,我们通过示例代码简单的介绍了如何通过Myabtis进行一个简单的增删改查,并用简单的步骤描述了示例程序的运行过程。为了更直观,其工作原理可理解成如下步骤: 初始化阶段:读取XML配置文件和注解中的配置信息,创建配置对象,并完成各个模块的初始化的工作 代理阶段:封装iBatis的编程模型,使

2021 05-17

面试题:ArrayList、LinkedList、Vector三者的异同?

面试题:ArrayList、LinkedList、Vector三者的异同?       同:三个类都是实现了List接口(Collection的子接口之一),存储数据的特点相同:存储有序的、可重复的数据不同: *|----ArrayList:作为List接口的主要实现类;线程不安全的,效率高;底层使用Object[]elementData存储*|----LinkedList:对于频繁的插入、删除操作,使用此类效率比ArrayList高;底层使用【双向链表】存储*|-