随笔分类 - 课程
摘要:一、题目 给你一个二叉树的根节点 root , 检查它是否轴对称。 二、思路 它们的两个根结点具有相同的值 每个树的右子树都与另一个树的左子树镜像对称 三、代码 class Solution { public boolean isSymmetric(TreeNode root) { return c
阅读全文
摘要:一、题目 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 二、思路 比较两个节点的值,如果两个节点的值不相同则两个二叉树一定不同; 如果两个节点的值相同,则判断两个节点的子节点是否为空,如果只有一个节点的
阅读全文
摘要:一、题目 给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到
阅读全文
摘要:一、题目 给定二叉树的根节点 root ,返回所有左叶子之和。 二、思路 一个节点为「左叶子」节点,当且仅当它是某个节点的左子节点,并且它是一个叶子结点。因此我们可以考虑对整棵树进行遍历,当我们遍历到节点 node 时,如果它的左子节点是一个叶子结点,那么就将它的左子节点的值累加计入答案。 三、代码
阅读全文
摘要:一、Apache Hudi (一)背景 Hudi 是 Uber 主导开发的开源数据湖框架。所以大部分的出发点都来源于 Uber 自身场景,比如司机数据和乘客数据通过订单 Id 来做 Join 等。在 Hudi 过去的使用场景里,和大部分公司的架构类似,采用批式和流式共存的 Lambda 架构,我们先
阅读全文
摘要:一、题目 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 二、思路 在遍历完一层节点之后,将存储该层节点值的列表添加到结果列表的头部。 三、代码 class Solution { public List<List<In
阅读全文
摘要:Prolog 是一种与众不同的语言,不用来开发软件,专门解决逻辑问题。比如,”苏格拉底是人,人都会死,所以苏格拉底会死”这一类的问题。 Prolog 就是”逻辑编程”(programming of Logic)的意思。只要给出事实和规则,它会自动分析其中的逻辑关系,然后允许用户通过查询,完成复杂的逻
阅读全文
摘要:摘要 面向对象设计(OOD)有助于我们开发出高性能、易扩展以及易复用的程序。其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC、DI以及Ioc容器等概念。通过本文我们将一起学习这些概念,并理清他们之间微妙的关系。 0 前言 对于大部分小菜来说,当听到大牛们高谈DIP、IoC
阅读全文
摘要:1 getDeclaredConstructor getDeclaredConstructor()返回指定参数类型的private和public构造器。 对于getDeclaredConstructor方法获得的构造器需要先设置可访问,再实例化对象。 public class Test { publ
阅读全文
摘要:我们经常需要将不同的两个对象实例进行属性复制,比如将DO对象进行属性复制到DTO,这种转换最原始的方式就是手动编写大量的 get/set代码,很繁琐。为了解决这一痛点,就诞生了一些方便的类库,常用的有 Apache的 BeanUtils,Spring的 BeanUtils, Dozer,Orika等
阅读全文
摘要:## 1 题目 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 ## 2 思路 我们可以用广度优先搜索解决这个问题。 ## 3 代码 ``` class Solution { public List> levelOrder(TreeNode roo
阅读全文
摘要:一、MultipartFile 在Java中处理文件向来是一种不是很方便的操作,然后随着Spring框架的崛起,使用Spring框架中的MultipartFile来处理文件是件很方便的事了, (一)概述 MultipartFile为org.springframework.web.mutipart包下
阅读全文
摘要:1 HTTP Status Code HTTP请求响应的内容有很多,包括Body、Cookies、Headers和Status。 我们最常用的是Body、其次Headers、Cookies。而HTTP Status Code关注得最少。 1.1 HTTP Status Code 分类分类描述 1**
阅读全文
摘要:(一)HttpSession介绍 HttpSession:服务器端会话管理技术 本质也是采用客户端会话管理技术。 只不过在客户端保存的是一个特殊标识,而共享的数据保存到了服务器端的内存对象中。 每次请求时,会将特殊标识带到服务器端,根据这个标识来找到对应的内存空间,从而实现数据共享! 是Servle
阅读全文
摘要:在 real time application 开发中,我们使用 Exception handling concept,以平滑终止程序。 它将 system error messages 转换为 user friendly error messages 。 但是在 Spring Boot 框架中,他
阅读全文
摘要:MapReduce,它是 Hadoop 框架中处理的核心构建块之一。Google 在 2004 年 12 月发表了一篇关于 MapReduce 技术的论文,这成为 Hadoop Processing Model 的起源。 MapReduce 是一种编程模型,可以让我们对庞大的数据集进行并行和分布式处
阅读全文
摘要:(一)图形验证码 验证码功能位于 cn.hutool.captcha 包中,核心接口为 ICaptcha,此接口定义了以下方法: createCode: 创建验证码,实现类需同时生成随机验证码字符串和验证码图片 getCode: 获取验证码的文字内容 verify: 验证验证码是否正确,建议忽略大小
阅读全文
摘要:一、Servlet 我们平时说的Servlet看上去很神秘,其实本质很简单,就是一个Java接口interface而已。 下面是javax.servlet的具体实现,只有几句代码: public interface Servlet { public void init(ServletConfig c
阅读全文
摘要:(一)什么是拦截器? 1.含义 在Spring Boot中,拦截器是一种用于拦截和处理HTTP请求的机制。它是Spring框架提供的一种中间件,用于在请求到达控制器(Controller)之前或之后执行一些共享的逻辑。 Spring Boot的拦截器基于Spring MVC框架中的HandlerIn
阅读全文
摘要:(一)Spark介绍 Spark是一个通用的分布式数据处理引擎。 通用:通用指的是Spark可以做很多事情。包括机器学习,数据流传输,交互分析,ETL,批处理,图计算等等等等都是Spark可以做到的。甚至可以说,你需要用数据实现的任何事情,你都可以用Spark试试看。 分布式:指的是Spark处理数
阅读全文

浙公网安备 33010602011771号