ARTS挑战打卡第三周

2023-11-13

ARTS挑战

Algorithm-一周至少一道算法题

Review-阅读并点评至少一篇英文技术文章

Tip-学习至少一个技术技巧,总结和归纳在日常工作中所遇到的知识点

Share-分享一篇有观点和思考的技术文章

01-Algorthm

———————

leetcode-872:https://leetcode.com/problems/leaf-similar-trees/

leetcode-1022:https://leetcode.com/problems/sum-of-root-to-leaf-binary-numbers/

解题思路都很类似,递归,遍历根节点、左子树,右子树,关键是找到终止递归的点。

02-Review

——————

https://howtodoinjava.com/best-practices/unit-testing-best-practices-junit-reference-guide/

JUnit最佳实践:

  • 单元测试的目的不是为了找bug,只是为了检查代码单元逻辑的正确性

  • 如果要为了找bug,最好的办法就是运行整个应用,调用对应的接口

  • Mock一切外部服务

  • 每次只测试一个代码单元

  • 不要对配置进行单元测试

https://loneidealist.wordpress.com/2017/07/03/distributed-coordination/

总结学到的分布式系统中的概念:

分布式协作

分布式协作出现的原因:在分布式系统中,一个集群中的所有节点需要互相通信,如果让节点自己去做,那么就会十分复杂,于是就需要一个“中间媒介者”去做这件事情。更进一步的,把这个“中间媒介者”从集群中拆分出来,独立为一个系统。

高可用

系统的高可用性意味着一群服务器运行时与单台机器运行时没区别。分布式系统就是为了实现高可用而出现的解决方案,通过负载均衡,将单个请求分布到多台机器,单台机器的失败就不会导致整个服务挂了。

解决了服务的可用性之后,遇到新的问题就是发现分布式系统中还会存储很多数据,这些不同服务器之间的共享的锁、数据、配置在运行中怎么保证就是正确的?这就需要分布式协作及共识。

共识

共识是分布式容错系统中最基本的问题,共识意味着多个服务器同意一个值。简单而言,共识就是分布式系统中如何认同一个值。

03-Tip

——————

二叉树算法题的遍历框架

/* 基本的二叉树节点 */class TreeNode {    int val;
    TreeNode left, right;
}void traverse(TreeNode root) {
    traverse(root.left)
    traverse(root.right)
}

JUnit最佳实践

  • 单元测试的目的不是为了找bug,只是为了检查代码单元逻辑的正确性

  • 如果要为了找bug,最好的办法就是运行整个应用,调用对应的接口

  • Mock一切外部服务

04-Share

—————

【Blog】Mockito-提高单元测试效率利器

参考引用

JUnit Best Pratices

https://howtodoinjava.com/best-practices/unit-testing-best-practices-junit-reference-guide/

distributed-coordination

https://loneidealist.wordpress.com/2017/07/03/distributed-coordination/

leetcode-1022

https://leetcode.com/problems/sum-of-root-to-leaf-binary-numbers/

leetcode-872

https://leetcode.com/problems/leaf-similar-trees/

更多精彩内容,请关注个人公众号。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ARTS挑战打卡第三周 的相关文章

  • Python爬虫常见异常及解决办法

    文章目录 1 selenium common exceptions WebDriverException Message unknown error cannot find Chrome binary 方法一 配置参数 方法二 修改源文件
  • mysql学习-mysql数据类型学习01

    数据类型概览 数值类型 整数类型包括 TINYINT SMALLINT MEDIUMINT INT BIGINT 浮点数类型包括 FLOAT 和 DOUBLE 定点数类型为 DECIMAL tinyint smallint mediumin
  • 【MySQL】MYSQL内核:INNODB存储引擎 卷1pdf——百度网盘下载

    百度网盘地址 https pan baidu com s 1p4CsmBhYzrIawwUznmByYw 资源来之不易 需要获取密码 请关注公众号 全栈船长 并回复数字 0002
  • 前端开发:JS中截取字符串的用法总结,高级Android程序员必会

    var a 0123456789 a substring 5 2 4 start 和 stop 有字符串 但是最后的输出结果是 234 a substring 5 hh start 和 stop 有字符串 但是最后的输出结果是 234 二
  • 计算机在汽车设计方面的应用属于计算机的,计算机技术辅助设计在汽车设计中的应用.pdf...

    82 车辆与动力工程 Vehicles and Power Engineering 2017 年 2 月 计算机技术辅助设计在汽车设计中的应用 温 欣 汪 家宇 杨 海 南 沈 阳理工 大学 辽 宁 沈 阳 110159 摘 要 随着社会经
  • keil软件调试(Debug)仿真教程(软件调试和硬件调试的区别)及常用调试按键详解

    文章目录 前言 一 什么是软件调试 Debug 有什么用 二 keil Debug常用按钮 总结 前言 单片机的调试分为两种 一种是使用软件模拟调试 第二种是硬件调试 两种调试方式各有不同 软件模拟调试有误差 而硬件调试 借用仿真器调试是嵌
  • 新斗罗大陆手游服务器维护,《新斗罗大陆》新ss魂师天青龙牛天修复公告

    亲爱的魂师大人 新SS魂师天青龙牛天首发后 小舞收到了大量意见反馈 部分魂师大人认为牛天战斗结果异常 过高的伤害与其魂师定位不符 我们在接收到反馈的第一时间 进行了紧急核查 随后 我们发现该问题是由牛天的技能 龙魂觉醒 导致 当牛天施展该技
  • AQS原理解析及源码分析

    目录 1 介绍下AQS几个重要的组件 2 内部成员变量state 3 同步队列NODE 4 等待队列 condition AbstractQueuedSynchronizer又称为队列同步器 后面简称AQS AQS的核心思想是 如果被请求的
  • 对比梯度下降和正规方程解性能

    现在用导数的方式模拟线性回归中的梯度下降法 首先再来回顾一下梯度下降法的基础 梯度下降法不是一个机器学习算法 而是一个搜索算法 梯度下降法用在监督学习中 梯度下降法的过程 对比模型输出值和样本值的差异不断调整本省权重 直到最后模型输出值和样
  • Leetcode题解——26.树的子结构

    题目地址 剑指 Offer 26 树的子结构 力扣 LeetCode 目录 一 解题思路 一 大体思路 二 Search函数 三 Judge函数 二 代码实现 三 拓展思考 一 解题思路 一 大体思路 对于二叉树类的题目 一般会使用递归或层
  • YOLOv5 tensorRT C++代码详解之engine的读取

    在tensorRT中 engine模型是对yolov5序列化后的结果 在推理的时候需要进行反序列化才能进行推理 那么第一步就是读取engine文件 ifstream介绍 engine文件的读取需要用到ifstream 需要导入头文件 inc
  • SpringBoot最简单好用的导出导入功能,拿来即用

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 拿来吧你 一 接口说明 二 依赖 三 导出工具类 四 导入工具类 五 实体类的改造 BaseEntity java 六 控制层使用 七 效果 数据库表 1 下载模板
  • C++中三种产生随机数的方法

    第一种方法 使用时间做为生成随机数的种子 include
  • 190705 安卓-对抗AndResGuard的重打包

    换了一个apk实验后 apktool b f p xxx也不行 仍然报资源错误 看了一下可能是鹅厂出的AndResGuard工具 会将资源文件夹 Res xxx重命名为 r x类的目录 导致资源解析出错 针对这个混淆有shakaApktoo
  • volatile 的理解

    文章目录 前言 通过一系列的问题 了解volatile 总结 前言 在面试的时候 经常会遇到多线程的问题 然后面试官会提到 你是怎么做到线程安全的 然后就会涉及到关键字volatile 这个是在面试过程中高频率出现的 所以还是有必要对它进行
  • 岭回归(Ridge Regression)及实现

    岭回归 Ridge Regression 及实现 https blog csdn net google19890102 article details 27228279 一 一般线性回归遇到的问题 在处理复杂的数据的回归问题时 普通的线性回
  • linux驱动调试--段错误之栈信息分析

    转自 http blog chinaunix net xmlrpc php r blog article uid 29401328 id 4923529 接着上一篇来分析一下Oops的栈 s3c2440平台 关于调试源码和整个Oops信息请
  • LeetCode-1318. Minimum Flips to Make a OR b Equal to c

    Given 3 positives numbers a b and c Return the minimum flips required in some bits of a and b to make a OR b c bitwise O
  • 图像清晰度评价指标(Python)

    最近在毕业设计中涉及了有关增强图像清晰度的实验 需要一些指标来进行实验结果的评估 刚好网上有个总结的非常好的博客 见参考文献 1 但没有实现方法 因此 我将在我的博客中用Python实现 评估方法实现 所有函数的具体说明都在参考文献 1 里
  • QMap和QHash类

    QMap和QHash具有非常相似的功能 它们的差别仅在于 1 QHash具有比QMap更快的查找速度 2 QHash以任意的顺序存储数据项 而QMap总是按照键 key的顺序存储数据 3 QHash的键类型 Key必须提供operator

随机推荐

  • Softmax分类和两层神经网络以及反向传播的代码推导

    发现草稿箱里还有一篇很早之前的学习笔记 希望可以帮助到有需要的童鞋 目录 序 Softmax分类器 反向传播 数据构建以及网络训练 交叉验证参数优化 序 原来都是用的c 学习的传统图像分割算法 主要学习聚类分割 水平集 图割 欢迎一起讨论学
  • python随机大小写字符串_python 随机产生特定类型字符的函数(大写、小写、数字)...

    1 创建一个 Randomcharacter py 文件 作为模块文件供测试或实现程序调用 内容如下 from random import randint generate a random character between ch1 an
  • 基于51单片机 数控恒流源设计 可调电流源

    设计硬件组成 基于51单片机 数控恒流源设计 可调电流源基于单片机可调电流源设计 项目定制觉得选题不错 分享一下 由51单片机 LCD1602液晶 变压器 整流桥 开关电源LM2596 TLC5615 LM358 TIP31C 按键 TL4
  • ThinkPhp6+Vue前后端分离系统案例

    项目介绍 一款 PHP 语言基于ThinkPhp6 Vue ElementUI等框架精心打造的一款模块化 插件化 高性能的前后端分离架构敏捷开发框架 可用于快速搭建前后端分离后台管理系统 本着简化开发 提升开发效率的初衷 目前框架已集成了完
  • 秒杀linux下系统调用fork()面试题

    秒杀linux下系统调用fork 面试题 第一道题 在之前博客也写过这道题 http blog csdn net chdhust article details 8535915 题目 请问下面的程序一共输出多少个 1 2 3 4 5 6
  • 华为前副总裁李玉琢:华为无法培养出企业家

    1995年我刚进入华为不久 有人问我四通与华为的区别时 我脱口而出 四通能培养企业家而华为不能 这一点从任正非迟迟无法找到自己的 替手 就可见一斑 曾国藩说 做大事者 以寻找替手为第一要义 任正非也并非不知道这些道理 但是他的某些意识以及管
  • vscode配置C/C++环境(Windows)

    1 总体流程 2 下载CodeBlocks 下载该CodeBlocks的主要目的是为了使用其自带的MinGW 对于初学者在配置环境这步会少遇到一些坑 下载网址 http www codeblocks org downloads binari
  • 2017校园招聘腾讯笔试题 在线编程题

    2 二分查找 90 90 如果输入80 80 在0到90之间 记为1 继续二分 80在 45 90 之间 记为1 最后应该输出为111100 则输出111100 Java代码如下 import java util Scanner publi
  • SSM 使用C3P0 数据库连接池 提示如下错误信息:Method com/mchange/v2/c3p0/impl/NewProxyPreparedStatement.isClosed()Z

    产生上述问题的原因是 c3p0 jar版本过低 我用的是 c3p0 0 9 1 2 jar 解决办法 c3p0 0 9 1 2 jar 换成 c3p0 0 9 5 2 jar
  • 路由器、交换机、猫(Modem)、LAN、WAN、WLAN、VLAN基本概念

    电脑之间是通过TCP IP协议进行说话的 不同电脑之间准确的找到对方是通过IP地址实现的 不在同一个网络的电脑信息交互是通过网关来实现的 网关就是一个公网地址 由运营商下发的 DHCP服务器下发IP地址 通过DHCP服务端口UDP67和UD
  • 手机屏幕显示正常但是触摸有一部分出问题,是内屏坏了吗?保修期内手机该不该走官方售后?

    这个问题我亲身经历 我现在人就在华为官方售后 根据手机城小哥的说法 现在手机触摸和显示都是一体的 所以如果出现触摸有问题 内屏或者排线等甚至主板都有可能出问题 保修期内手机建议走官方售后 因为有可能不只是屏幕坏了 保修可以同时检查你手机的主
  • 2020-12-24如何在QT中增加函数

    关于如何在QT软件中增加函数的问题 比如在VS中可以这样增加函数 但是在QT中右键并不能如上图一样有这个ADD Member Function 所以应该怎么加呢 如下图所示 1 首先在对应头文件中增加函数声明 如图蓝色区域代码 2 在Sav
  • 关于inet_addr() 函数

    inet addr 将一个字符串格式的ip地址转换成一个uint32 t数字格式 但是需要注意的是 这个函数的返回值在大小端机器上是不同的 例如输入一个 192 168 0 1 的字符串 在内存中的排列 字节从低到高 0xC0 0xA8 0
  • 彻底搞清“SVM”

    文章目录 前言 一 SVM是什么 概述 二 线性SVM 2 1 决策面 方程 2 2 约束条件 以下可以证明 有约束条件和没约束条件的公式是一样的 2 3 线性SVM优化 三 非线性分类 3 1 核函数 总结 前言 分类分析 概念 通过构造
  • 3D点云重建原理及Pytorch实现

    3D点云重建原理及Pytorch实现 Pytorch Learning Efficient Point Cloud Generation for Dense 3D Object Reconstruction 一种Pytorch实现方法 学习
  • maven学习笔记--常用插件(plugins)和目标(goals)

    Maven 的核心其实不做什么实际的事情 除了解析一些 XML 文档 管理生命周期与插件之外 Maven 被设计成将主要的职责委派给一组 Maven 插件 这些插件可以影响 Maven 生命周期 提供对目标的访问 绝大多数 Maven 的动
  • “阿里巴巴官方终极版Java八股文开源,Java学习利器首次揭晓!“

    铜三铁四已经结束了 但还是有很多Java程序员没有找到工作或者成功跳槽 跳槽成功的也只是从一个坑中 跳入另一个坑中 在LZ看来 真正有意义的就业与跳槽 是要进入到一个有绝对潜力的行业或者薪资能实现爆炸式增长的 这件事不容易 但也没有想象的遥
  • Word文档误删怎样恢复?6种实用方法分享给你

    如果您曾经因为没有保存微软Word文档而丢失了所有工作 那么您就会明白疼痛是多么明显 幸运的是 自从在软盘上备份文件的黑暗时代以来 Word已经走过了漫长的道路 如今 如果您丢失了未保存的Word文档 可能仍然有一种方法可以恢复它 这个过程
  • Nodejs学习

    本周我们主要学习了Nodejs相关知识 我也整理了一些相关知识点 首先呢 我们要了解Nodejs不是一门语言 也不是库 不是框架 而是一个JavaScript运行时环境 也就是说它可以解析和执行JavaScript代码 我们知道 浏览器中的
  • ARTS挑战打卡第三周

    ARTS挑战 Algorithm 一周至少一道算法题 Review 阅读并点评至少一篇英文技术文章 Tip 学习至少一个技术技巧 总结和归纳在日常工作中所遇到的知识点 Share 分享一篇有观点和思考的技术文章 01 Algorthm le