自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (2)
  • 问答 (4)
  • 收藏
  • 关注

原创 LeetCode Container With Most Water Two Pointers (golang)

Problemanalytic processThe maximum yield depends on the second largest ordinateDouble pointer i j (i<j)is used to represent the head and tail of the array, and push forward until they meetCalculate the current water loadarea = (j-i) * min(height[i

2020-07-21 14:25:03 131

原创 LeetCode Two Sum II - Input array is sorted (Two pointer) (golang)

ProblemBasicsTwo pointersThe essence of two Pointers algorithm is to set two Pointers i,j(i.e., i <j) to point to the element to be solved respectively (i.e., i <j), and then move the two Pointers in the same direction or in the opposite directio

2020-07-20 22:32:46 155

原创 Docker之Namespace和Cgroup

目录Namespace概念容器6六项隔离Namespace API实际操作Cgroup概念实际操作之前学习了docker的一些原理和文件系统,对于其核心技术namespace和cgroup没有一个很好的认识,下面将记录其知识点Namespace概念namespce资源隔离,又称为命名空间,它主要做访问隔离。其原理是针对一类资源进行抽象,并将其封装在一起提供给一个容器使用,对于这类资源,因为每个容器都有自己的抽象,而他们彼此之间是不可见的,所以就可以做到访问隔离。docker就是通过这样一种技术,使

2020-07-20 15:46:35 742

原创 golang对比java学习

之前有记录过golang的一些基础知识,但是比较琐碎,更像是一种流程。因为之前学的是java,将进行golang与java对比学习目录格式控制变量常量定义流程控制集合指针及内存函数结构体接口异常处理并发和并行格式控制Go新增%T 输出格式需导入fmt包不需要;print 不换行 不空格println 换行 空格printf 格式化输出 ("%v",a)var a int =10fmt.println("a=",a)fmt.printf("a=%v\n",a)fmt.printf("

2020-07-18 21:16:56 975

原创 LeetCode每日一题 交错字符串 (golang)

题目分析过程:这里还是用到动态规划的思想1.如果s1+s2不等于s3,那么s1,s2,必然不和s3交错2.如果s1+s2等于s3,那么我们定义 f(i, j)表示 s1的前i个元素和s2的前j个元素能否交错组成s3的前 i + j个元素这个问题就能转化为之前地下城勇士等一系列的动态路径题s3的每个字符都是从s1(向下)或者s2(向右)拿到的,所以只要判断是否存在这条s3路径即可到达(i,j)可能由(i-1,j)点向下一步,选择s1[i-1]到达;也可能由(i,j-1)点向右一步,选择s2[j

2020-07-18 14:48:29 161

原创 Docker网络

目录Docker0link自定义网络网络连通Docker0我们每启动一个docker容器,docker就会给容器分配一个ip,只要安装了docker,就会有一个网卡docker0进行网络分配可以用ip addr //查看容器内部地址我们发现这个容器带来的网卡是一对对的,而使用的技术就是veth pair 技术veth pair 技术就是一对的虚拟设备接口,它都是成对出现的一端连着协议栈,一端彼此相连着正因为有这个特性,它常常充当着一个桥梁,连接着各种虚拟网络设备如图那么我们来测试一下两

2020-07-17 21:39:54 166

原创 阿里云主要云产品实操+感受(ESC+RDS)

目录ESC部署web项目镜像容器服务云监控设置资源水位主机监控报警规则部署的项目监控RDS感受之前对阿里云产品做了一个理论的概述,没有真正的实操,下面是一些实操记录ESC部署web项目这个之前的博客已经有写到https://blog.csdn.net/qq_46595591/article/details/107353263镜像容器服务https://blog.csdn.net/qq_46595591/article/details/107393574云监控设置资源水位主机监控

2020-07-17 17:43:41 709

原创 LeetCode 每日一题 搜索插入位置 二分法(golang)

目录题目暴力排序二分法题目暴力排序根据题意,这是一个有序数组,可以直接遍历数组与target比较,若相等则返回索引位置,若不存在返回应该被插入的位置代码func searchInsert(nums []int, target int) int { for i := 0; i < len(nums); i++ { if nums[i] == target || nums[i] > target { // 相等或者不存在时 return i

2020-07-17 12:34:20 198

原创 Docker实战(部署JAVA Web项目含数据库+Dockerfile发布tomcat镜像+发布到DockerHub/阿里云容器服务)

目录部署JAVA Web项目部署tomcat部署MySQL发布项目Dockerfile发布tomcat镜像主要对各种docker 命令的综合使用,在阿里云服务器上实现部署JAVA Web项目部署tomcat操作命令1.docker pull tomcat //下载tomcat镜像2.docker images //查看存在的镜像3.docker run -d -p 端口名:8080 --name 容器名 tomcat //后台启动tomcat 并使端口暴露给8080

2020-07-16 21:39:56 1278

原创 LeetCode每日一题 判断二分图 染色法(golang)

题目分析过程这里用到的染色法根据题意,二分图是指顶点由两个集合组成,且所有边的两个顶点正好分别处于两个集合里。我们可以用两种颜色代表这两个集合,相邻的顶点不能是同一种颜色,比如我们把一个节点染成红色,那么它相邻的节点就染成蓝色,当所有节点都能染上色,就是一个二分图。于是我们遍历每个顶点,再遍历当前顶点的所有相邻顶点,保证不漏掉顶点,使用深度搜索法代码func isBipartite(graph [][]int) bool { type color int const ( blue

2020-07-16 14:50:38 372

原创 Git(背景 目的 原理 分支)

目录背景版本控制系统分布式版本控制git历史目的原理工作区域工作流程分支git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理,也是世界上最流行的版本控制系统背景版本控制系统版本控制是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便产看历史记录,备份以便恢复以前的版本的软件工程技术,简单来说就是用于管理多人协同开发项目的技术没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发中将会引入很多问题,如代码冗余、软件过程的事务性、并发性、安

2020-07-16 12:36:14 603

原创 Docker常用命令

主要记录Docker常用命令(已排序)attach //当前shell下attach连接指定运行镜像build //通过dockerfile定制镜像commit //提交当前容器为镜像cp //从容器中拷贝指定文件或者目录到宿主机中creat //创建一个新的容器,但不启动diff //查看容器变化events //从docker服务获取容器实时事件exec

2020-07-15 21:24:53 158

原创 Docker 概述(背景 价值 目的 原理)

目录背景、价值背景价值目的原理Docker原理核心思想基本组成底层原理虚拟机与docker比较镜像原理文件系统镜像加载原理分层原理Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。下面将从四个方面进行介绍背景、价值背景过去一款产品的开发和上线需要两套环境,分别是应用环境和配置环境在开发——运维的过程中环境配置非常麻烦,比如要发布一个war项目,需要配置的环境很多包括项目自

2020-07-15 20:43:18 821

原创 LeetCode每日一题 不同的二叉搜索树 动态规划(golang)

题目分析过程二叉搜索树首先要了解二叉搜索树的特点若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值再来特殊示例1.当n=1时,只能形成一个单节点二叉搜索树2.当n=2时,可以形成两颗二叉搜索树(1为根节点,2为右子树;2为根节点,1为左子树)3.当n=3时,可以形成五颗二叉搜索树(1为根节点,2,3/3,2右子树;2为根节点,1,3左右子树;3为根节点,1,2/2,1左子树)类推到一般情况设G(n): 长度为 n

2020-07-15 14:51:25 184

原创 阿里云服务器部署JAVA Web全过程及常见问题(图文)+操作感受

目录环境搭建jdkTomcatMySql项目部署常见问题tomcat无法访问防火墙设置阿里云安全组设置MySql初始密码找不到,无法登陆MySql无法访问操作感受环境搭建首先我们用到的是阿里云服务器+CeneOS7 操作系统 因为操作与在虚拟机上使用CentOS部署类似,有一些细微的差别会在使用感受中提出此外还用到的工具有SecureCRT 通过SSH远程登录阿里云服务器(当然也可以使用XShell等等),Xftp6通过FTP协议将本地文件上传至云服务器jdk操作命令1.yum list ins

2020-07-15 12:05:17 521

原创 LeetCode每日一题 三角形最小路径和 动态规划(galang)

题目分析过程1.自上而下还是用到动态规划的思想1.用 dp(i,j) 表示从三角形顶端,走到坐标 (i,j) 的所有路径中最小的路径和2.根据题意,坐标 (i,j)只可能由它左上角或右上角走过来,因此这两个点的坐标分别为dp(i-1,j-1),dp(i-1,j)3.给出dp(i,j) 的状态转移方程,我们只需要对左上角坐标和右上角坐标的最短路径和求较小值,然后再加上坐标 (i,j) 的元素值就可以得到 dp(i,j), 即dp(i,j) = min(dp(i-1,j-1),dp(i-1,j)

2020-07-14 13:51:43 206

原创 Leetcode 每日一题 两个数组的交集 (golang)

目录题目排序哈希表题目排序思路1.首先明确如果两个数组是有序的,那么有利于求交集2.对两个数组排序,并对其遍历3.把相同元素放在第三个数组中,直到一个数组遍历完代码func intersect(nums1 []int, nums2 []int) []int { sort.Ints(nums1) sort.Ints(nums2) //对两数组排序 res := []int{} //创建第三个数组 i,j := 0,0 for i < len(nums1) &&

2020-07-13 12:05:15 927

原创 Leetcode 每日一题 地下城游戏 动态规划(golang)

1

2020-07-12 15:08:54 885

原创 Leetcode每日一题 计算右侧小于当前元素(golang)

目录题目暴力排序离散化树状数组题目暴力排序根据题意,直接用排序的方法可以轻松解决思路1.进行两次循环,查找出右侧小于当前元素的个数代码func countSmaller(nums []int) []int { counts:=[]int{} //创建空数组counts for i, num := range nums{ count :=0 //先循环遍历num数组,定义一个计数变量count为0 for j := i + 1; j < len(n

2020-07-11 11:55:49 305

原创 云计算+云服务+阿里云产品

总结网上关于云计算、云服务和阿里云产品的一些概念和描述云计算概念个人认为云计算更是一种方法和模式,而非技术,虽然也需要相应的技术来支持。那么究竟什么是云计算百度上给出的定义是云计算(cloud computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。更加通俗地来讲云计算不再在一台底层硬件资源上“瞎折腾”,而是通过一定的方法将多个物理资源组织到一起去。比如一台虚拟机可以

2020-07-11 10:40:53 2210

原创 Leetcode 每日一题 最佳股票买卖时期含冷冻期 动态规划(golang)

题目思路分析这里还是用到了动态规划思想首先由题目可知股票交易有三种状态买入 卖出 冷冻期 要求最大收益,我们可以理解为买入为负收益,卖出为正收益我们用[0] 空仓 (,仓库内无股票,实行的动作是卖出股票)[1] 满仓 (仓库内有股票,实行的动作是买入股票,将要实行的动作是卖股票)[2] 冷冻期来表示各个状态设定初始状态1.第一天空仓 dp[0][0] = 02.第一天满仓(买入股票),实为负收益 dp[0][1] = -prices[0] //-prices[

2020-07-10 17:55:15 310

原创 Leetcode 每日一题 恢复空格 动态规划(golang)

题目思路分析这里又要用到动态规划的知识1.定义dp[i]为sentence[:i]在字典中未识别的字符数,长度为sentence的长度+12.判断sentence[j:i] (i>j>=0)是否在字典中,若不在,则dp[i] = dp[i-1]+13.若在,则dp[i] = min(dp[i], dp[j])这和当前子串是否在给定串中以及计算子串出现次数有异曲同工之妙代码func respace(dictionary []string, sentence string) int

2020-07-09 17:28:29 235

原创 Golang 学习(持续更新)

分享一些golang有关的知识点

2020-07-08 21:31:44 1566

原创 Leetcode 每日一题 跳水板(golang)

题目分析思路运用数学方法,考虑以下情况1.k=0,则不能建造任何跳水板,返回空;2.shorter=longer 短跳水板长度=长跳水板长度,那么建造跳水板的长度是唯一的,都是shorterk,返回一个长度为1,组中元素为shorterk的数组;3.一般情况 shorter 不等于longer 且k>0,此时默认全部用短木板是一种,然后每多替换一个短木板为长木板就是一种新组合,因此又有k种组合,所以一共有k+1种长度接下来判断两种组合,1>有 i块长木板,则跳水板的长度是 sho

2020-07-08 17:51:10 292

原创 Leetcode每日一题 路径总和 二叉树(golang)

目录题目二叉树基本知识(golang)性质遍历(golang实现)题目详解题目二叉树是我们经常用到的数据结构下面是一道运用二叉树遍历知识的题二叉树基本知识(golang)性质二叉树主要有以下几个性质1.二叉树的第i层上最多有2i-1(i≥1)个节点2.深度为h的二叉树中最多含有2h-1个节点3.若在任意一棵二叉树中,有n个叶子节点,有n2个度为2的节点,则必有n0=n2+14.具有n个节点的完全二叉树深为log2x+1(其中x表示不大于n的最大整数)5.若对一棵有n个节点的完全二叉树

2020-07-07 17:12:09 534

原创 VMware Workstation 上 CentOS8的操作(图文)

主要记录在VMware Workstation 上使用CentOS8 的一些操作目录文件系统及用户目录命令行实现目录和文件操作当前目录目录操作归档压缩软链接用户操作文件系统及用户目录打开活动中的文件选择右列最后一个其他位置,点击选择计算机点击选择home文件夹,就会出现以用户名命名的文件夹,也就是一开始界面显示的主目录命令行实现目录和文件操作比较常用的操作命令有cd pwd ls 当前目录操作mkdir/rmdir 创建和删除文件夹cp复制 rm删除 mv移动tar zip u

2020-07-07 14:25:56 1355

原创 Leetcode每日一题 动态规划(Golang)

动态规划的思想是将一个复杂的问题转换为若干个子问题,并求子问题的最优解大家最熟悉的应该是背包问题以及货币分配问题下面是一道Leetcode上的题分析过程1.思路用坐标(0,0)来表示开始位置,f(i,j)来表示从(0,0)开始走到终点(i,j)的路径数机器人只能每次向右或向下移动一步,所以f(i,j) 只能通过 f(i-1, j)和 f(i, j-1) 转移得到(向右,向下)2.障碍题目中有说到网格中会有障碍物,用动态规划的思路来看,遇到障碍不是简单的调头选择 其他路线,是该子问题无

2020-07-06 19:43:07 1647 1

c#三层架构 ATM项目(包含数据库)

c#三层架构 ATM项目(包含数据库)

2021-01-11

c#类与对象的继承与多态——图形间的继承关系

用c#实现基于shape类的各个图形周长、面积的计算(正方形 长方形 四边形 圆 圆柱 菱形 梯形 点 线)

2020-11-19

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除