草庐IT

01.两数之和

全部标签

MASA Framework源码解读-01 MASAFactory工厂设计(一个接口多个实现的最佳姿势)

序言闲来无聊,前段时间发现一个.net开源框架:masaframework。经过一些小型项目使用,发现确实挺不错的。然后我又去阅读了整个masaframework源码,特此来记录整个源码阅读的过程。如有错误之处还请指点MASAFramework简介​ MasaFramework是masastack系列中用于开发web系统的框架,它能够帮助我们技术团队在传统三层架构、DDD领域驱动形态随意切换,以便满足我们技术团队不同时期的需求,防止因公司业务扩张而更换技术框架带来的一系列成本。MASAFramework组成概述MASAFramework主要由三部分组成,分别是:BuildingBlocks(

Leetcode题1两数之和 JavaScript语言

1.两数之和方案一,暴力双循环读完题目,马上能想到的方案就是双循环,挨个排查,写出来也很快:vartwoSum=function(nums,target){constlen=nums.length;for(leti=0;i上面方案,最大的问题就是时间复杂度为O(n^2),所以我们可以想办法在此基础上优化。方案二,空间换时间(Map)方案一的思路是,从头到尾挨个去计算数组中任意两个元素的和,然后与给定结果值进行比较,从而找到目标索引,这就导致必须得进行O(n^2)复杂度的双循环,效率低下。为了干掉双循环,我们不得不转换思考方式,如何才能在一次迭代中就实现题目要求呢。题目本质是找到符合要求的两个数

Leetcode题1两数之和 JavaScript语言

1.两数之和方案一,暴力双循环读完题目,马上能想到的方案就是双循环,挨个排查,写出来也很快:vartwoSum=function(nums,target){constlen=nums.length;for(leti=0;i上面方案,最大的问题就是时间复杂度为O(n^2),所以我们可以想办法在此基础上优化。方案二,空间换时间(Map)方案一的思路是,从头到尾挨个去计算数组中任意两个元素的和,然后与给定结果值进行比较,从而找到目标索引,这就导致必须得进行O(n^2)复杂度的双循环,效率低下。为了干掉双循环,我们不得不转换思考方式,如何才能在一次迭代中就实现题目要求呢。题目本质是找到符合要求的两个数

LeetCode题2两数相加

2.两数相加分析题目比较简单,就是两个数相加求和。按照加法思想,同时遍历两个链表,从个位一直加到最高位即可。比如要计算352+99,步骤如下:最低位2+9得11,需进位,个位保留1,进位1先存储5+9得14,再加上刚刚的进位1,得到15,本位保留5,进位1先存储3+0(注意此时99的位数已经用完了,但是352还有一位,所以这里可以将99的这一位看作0)得3,再加上刚刚的进位1,得到4将前面几步中的数字按照顺序排列,可得到451。观察上述过程,一个容易出错的地方,在于加法进位的处理。另外一个难点,在于位数的处理,两个链表长度不一,结果链表的长度也只有把前面所有位数加完才确定。一种实现functi

LeetCode题2两数相加

2.两数相加分析题目比较简单,就是两个数相加求和。按照加法思想,同时遍历两个链表,从个位一直加到最高位即可。比如要计算352+99,步骤如下:最低位2+9得11,需进位,个位保留1,进位1先存储5+9得14,再加上刚刚的进位1,得到15,本位保留5,进位1先存储3+0(注意此时99的位数已经用完了,但是352还有一位,所以这里可以将99的这一位看作0)得3,再加上刚刚的进位1,得到4将前面几步中的数字按照顺序排列,可得到451。观察上述过程,一个容易出错的地方,在于加法进位的处理。另外一个难点,在于位数的处理,两个链表长度不一,结果链表的长度也只有把前面所有位数加完才确定。一种实现functi

小熊飞桨练习册-01手写数字识别

小熊飞桨练习册-01手写数字识别简介小熊飞桨练习册-01手写数字识别,本项目开发和测试均在Ubuntu20.04系统下进行。项目最新代码查看主页:小熊飞桨练习册百度飞桨AIStudio主页:小熊飞桨练习册-01手写数字识别Ubuntu系统安装CUDA参考:Ubuntu百度飞桨和CUDA的安装文件说明文件说明train.py训练程序test.py测试程序report.py报表程序onekey.sh一键获取数据到dataset目录下get-data.sh获取数据到dataset目录下check-data.sh检查dataset目录下的数据是否存在mod/lenet.pyLeNet网络模型mod/d

小熊飞桨练习册-01手写数字识别

小熊飞桨练习册-01手写数字识别简介小熊飞桨练习册-01手写数字识别,本项目开发和测试均在Ubuntu20.04系统下进行。项目最新代码查看主页:小熊飞桨练习册百度飞桨AIStudio主页:小熊飞桨练习册-01手写数字识别Ubuntu系统安装CUDA参考:Ubuntu百度飞桨和CUDA的安装文件说明文件说明train.py训练程序test.py测试程序report.py报表程序onekey.sh一键获取数据到dataset目录下get-data.sh获取数据到dataset目录下check-data.sh检查dataset目录下的数据是否存在mod/lenet.pyLeNet网络模型mod/d

Jenkins实践指南-05-Jenkins pipeline 语法01

3.Jenkinspipeline语法3.1pipeline组成  [作者:Surpassme]Jenkinspipeline是基于Groovy语言实现的一种DSL(领域特定语言),用于描述整条流水线是如何进行的。流水线的主要内容包括源码拉取、构建、打包、部署、测试、生成报告等步骤。  从源码管理仓库到生成测试报告这些过程中,可以根据需要分成若干阶段,而每个阶段仅处理一件事情,而每个阶段也可以通过多个步骤来完成,因此我们可以基于这些阶段和步骤些进行抽象,形成工程化的pipeline,因此一个基本的pipeline示例如下所示:pipeline{agentanystages{stage("Sam

Jenkins实践指南-05-Jenkins pipeline 语法01

3.Jenkinspipeline语法3.1pipeline组成  [作者:Surpassme]Jenkinspipeline是基于Groovy语言实现的一种DSL(领域特定语言),用于描述整条流水线是如何进行的。流水线的主要内容包括源码拉取、构建、打包、部署、测试、生成报告等步骤。  从源码管理仓库到生成测试报告这些过程中,可以根据需要分成若干阶段,而每个阶段仅处理一件事情,而每个阶段也可以通过多个步骤来完成,因此我们可以基于这些阶段和步骤些进行抽象,形成工程化的pipeline,因此一个基本的pipeline示例如下所示:pipeline{agentanystages{stage("Sam

G&GH01 注册/安装/设置

注意事项与声明平台:Windows10作者:JamesNULLiu邮箱:jamesnulliu@outlook.com博客:https://www.cnblogs.com/jamesnulliu学习笔记转载请注明出处欢迎留言0.前言本系列文章是git&github的入门教程.本系列文章优势:零基础深入浅出知识点涵盖面广本系列其他文章的链接尽管如此,想要真正学会git&github建议不要看任何教程,直接看git的官方文档.1.GitHub1.1.注册GitHub账号[点击跳转至注册页面]注意:如果跳转失败,请直接访问https://github.comDNS污染问题请自行解决.你需要记住你的注