Sirius_7
码龄5年
  • 27,651
    被访问
  • 107
    原创
  • 536,067
    排名
  • 10
    粉丝
  • 0
    铁粉
关注
提问 私信

个人简介:霍格沃兹在读学生

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2017-03-29
博客简介:

weixin_38107316的博客

查看详细资料
个人成就
  • 获得44次点赞
  • 内容获得33次评论
  • 获得62次收藏
创作历程
  • 22篇
    2021年
  • 86篇
    2020年
  • 3篇
    2019年
成就勋章
TA的专栏
  • 闲聊
    1篇
  • go
    21篇
  • 算法
    61篇
  • 数据结构
    50篇
  • Docker
    4篇
  • 多线程
    6篇
  • 数据库
    2篇
  • Python
    1篇
  • 运维
    1篇
  • MySql
    2篇
  • JAVA
    76篇
  • Spring框架
    8篇
  • IOC反转控制
    2篇
  • SpringBoot
    2篇
  • 奖学金
  • OpenStack云平台
    3篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

git push -u参数意义

其实发现自己在过往对于细节的把控不是很好,所以就会导致再三犯错。以后在工作学习中要主要对于细节的把控。下面对于git push -u的参数进行一下分析。其实一般使用来说。git pull某个分支之后,进行修改,直接git push就会发到对应的某个分支上。但是如果这个分支不是从远端pull下来的,而是本地创建的分支,那么当进行push时,便需要首先和远端的某个分支建立联系,而参数-u便是这个建立联系的关键。-u一般是在第一次push时,建立本地的分支和远端某个分支之间的关联,这样下次在本地分支push
原创
发布博客 2021.06.23 ·
421 阅读 ·
0 点赞 ·
0 评论

关于Git的一些命令

由于自己即将入职,所以需要提前做一些准备,把git的一些常用指令存储一下,传送门(- -其实主要是想在六月发一篇划水博客)
原创
发布博客 2021.06.23 ·
35 阅读 ·
0 点赞 ·
0 评论

Go语言中字典树的实现

写在前面字典树在存储、查询方面应用广泛。所以特总结一下,利用GO语言实现字典树。具体实现字典树的实现主要还是基于树形结构,如果只是小写字母的话,那其实字典树是一个26叉树,每个节点最多都可以有26个子节点。从而可以利用一个长度为26的数组来记录某个节点的子节点情况。并且每个节点可以使用一个布尔标志位来划定是否是一个单词,这是关键所在,具体代码见下:type Trie struct { children [26]*Trie isEnd bool}func Construct
原创
发布博客 2021.05.23 ·
122 阅读 ·
1 点赞 ·
2 评论

Go语言中的自定义slice排序

写在前面排序算法在日常生活中经常用到,许多语言有着很方便的api进行对排序算法的快速支持,譬如JAVA等中的lambda表达式,可以快速将自定义的排序规则织入。slice作为Go语言中特殊的数据结构,其排序的场景是比较常见的。Slice排序Go语言中的sort.slice可以利用匿名函数来快速实现自定义的排序。其实其很类似于其他语言中的sort函数,通过利用lambda表达式实现自定义排序,只不过这里是通过一个匿名函数。具体使用,见一个算法案例。案例分析给定一个字符串数组,和一个整数K,返回这个字
原创
发布博客 2021.05.20 ·
549 阅读 ·
0 点赞 ·
0 评论

Docker自定义镜像(异构为例)

写在前面docker镜像的制作主要是通过从docker仓库中拉取原始镜像,然后再通过生成容器的方式对镜像进行定制,或者直接利用dockerfile脚本文件对容器镜像进行个性化定制。例子这里主要是以异构docker镜像的制作为例子展开的,所谓的异构主要是指非x86架构,包括arm以及ppc架构等。第一步:拉取原始镜像:docker pull multiarch/ubuntu-core:armhf-focal第二步:利用原始镜像拉取生成相应的容器:docker run -it multiarch
原创
发布博客 2021.05.04 ·
181 阅读 ·
0 点赞 ·
1 评论

OpenStack中制作和上传Docker镜像

一、在docker节点新建dockerfile文件# vim dockerfie二、文件里面填(无需任何修改):FROM ubuntu:14.04MAINTAINER ZhangKe<294667739@qq.com>RUN apt-get updateRUN apt-get install -y openssh-serverRUN mkdir /var/run/sshdRUN echo 'root:rootroot' |chpasswdRUN sed -ri 's/^Per
原创
发布博客 2021.04.30 ·
404 阅读 ·
0 点赞 ·
1 评论

Go语言实现一个简单的并发聊天室

写在前面Go语言在很多方面天然的具备很多便捷性,譬如网络编程,并发编程。而通道则又是Go语言实现并发编程的重要工具,因为其承担着通道之间互相通信的重任。并且因为其本身就是并发安全的,所以在某些场景下是非常好用的。并发聊天服务器这里主要是实现一个简单的并发聊天服务器。首先,客户端可以在服务器中注册自己的信息(登录以及退出),客户端发出的所有的信息由服务器向各个客户端进行转发,或者换句话说是广播。具体代码服务端说的再多,没有代码简单明了,直接上代码~package mainimport (
原创
发布博客 2021.04.26 ·
1759 阅读 ·
2 点赞 ·
5 评论

Docker实现异构容器的创建

需求背景需要在X86的环境中,生成非X86架构的Docker容器,譬如arm以及ppc等。基本思路需要借助一款类似于转译cpu指令的程序:qumu-user-static。每一个异构容器的内部指令都会通过此程序转译给底层的X86架构cpu,从而实现上述功能。简要过程步骤1. 首先打开Linux内核的binfmt功能。该功能就是告诉linux什么样的文件等该用什么样的程序打开。这里主要是为了让Linux知道,系统在运行arm等架构的程序指令时,自动调用qemu-user-static来执行。开启方式
原创
发布博客 2021.04.24 ·
233 阅读 ·
0 点赞 ·
0 评论

GO语言实现拓扑排序-2

本次主要利用BFS实现拓扑排序在上一篇文章中,主要是利用BFS实现了拓扑排序。与DFS实现拓扑排序不一样的是,DFS主要采用递归的方式实现拓扑排序,而BFS则无需引入递归,其核心思想是对一个有向(有环)图的各个节点入度的判断与分析。核心代码func findOrder(numCourses int, prerequisites [][]int) []int { var ( //描述有向图 edges = make([][]int, numCourses)
原创
发布博客 2021.04.01 ·
97 阅读 ·
1 点赞 ·
0 评论

Go语言实现拓扑排序-1

写在前面所谓算法,一定一定是要落地才有意义的,任何一个在计算机领域流行的算法,一定有与之深度match的业务场景。这里之所以总结拓扑排序,是因为拓扑排序的应用场景还是非常丰富的。拓扑排序应用场景从经典的(人人都刷过)的课程表排课问题,到任何一些存在前驱和后驱关系的元素排序问题,其实都是典型的拓扑排序问题。如果细化问题,拓扑排序更多时候是有向图遍历或者排序。Go语言实现拓扑排序业务需求n门课程,其各个课程之间的有的课程需要先修,对应关系以map给出,例如:“信号与系统”:{"通信原理",“线性代
原创
发布博客 2021.03.30 ·
109 阅读 ·
0 点赞 ·
0 评论

关于Go语言中的迭代变量的分析

写在前面迭代变量的使用,在立即执行的函数中,一般是不会显现问题的,但是在延迟执行的函数中,就会出现致命的问题。立即执行的情况当然,这种例子有很多,这里举一个非常简单的例子分析一下。场景需求:将silce内的数字迭代输出即可。package mainimport "fmt"func main() { var numsSilces []int for i:=0; i<10; i++ { numsSilces = append(numsSilces, i) } for _, nu
原创
发布博客 2021.03.28 ·
153 阅读 ·
1 点赞 ·
0 评论

关于Go语言中的接口类型判断问题

作为一款面向对象的编程语言,Go语言的接口同样也存在多态这项特性。任何类型,如果其实现了某个接口所定义约束的函数,那么就说该类型实现了此接口。所以,就需要判断此时这个接口变量到底是什么类型的。具体见下:package mainimport "fmt"//定义接口type phone interface { call()}//利用两个子类型来实现该接口(实现其方法就ok,并无类似于implament等关键字)type apple struct{}type nokia struct {}
原创
发布博客 2021.03.19 ·
253 阅读 ·
0 点赞 ·
0 评论

Pthon编写脚本

这里直接借鉴大佬的总结,用于自己日后查看学习参考,链接如下:传送门
原创
发布博客 2021.03.15 ·
34 阅读 ·
0 点赞 ·
0 评论

Python多版本切换

环境MAC OS 其预装的是Python2,在安装了Python3之后,如何切换版本。如果是直接官网下载安装,直接在操作时,区别指令即可:python xxx.pypython3 xxx.py如果未能正常,可采用修改配置文件,添加python3的alias别名来实现此功能:用命令 sudo vi ~/.bashrc 在文本中添加一个alias。例如:alias python3=′/Library/Frameworks/Python.framework/Versions/3.7/bin/pyt
原创
发布博客 2021.03.15 ·
54 阅读 ·
0 点赞 ·
0 评论

Go语言中的函数字面量与匿名函数

写在前面习惯性的在写内容前说点儿什么,个人感觉Go语言中的函数字面量这个东西用着不是很顺手,所以想着总结一下,今天先从简单的开始。持续更新给出概念命名函数的作用范围是包级别的,这个大家都知道。如果想在程序的任意表达式中使用一个变量来表达函数,那便需要:函数字面量。函数字面量类似于函数申明,只不过其实际是一个变量,而此变量的值是一个匿名函数。如下所示:func lbw() func() int { return func() int{ }}其实可以这么理解,lbw这个字面量指的是一个返回值为
原创
发布博客 2021.03.13 ·
167 阅读 ·
1 点赞 ·
2 评论

GO语言多线程实践-3

关于Channel这种GO语言并发原语其实channel已经在另外一篇博客里面有曾经提到过,其使用起来是阻塞的(非buffered),所以比较容易造成dead lock。今天主要总结其两种比较优秀的应用场景:1.生产者和消费者的场景;2.用于替换WaitGroup的场景。生产者和消费者的场景具体代码见下:package mainimport ( "fmt" "math/rand" "time")func main() { c := make(chan int) for i :=
原创
发布博客 2021.03.08 ·
39 阅读 ·
0 点赞 ·
0 评论

GO语言多线程实践-2

实践背景本次实践的背景依然MIT的6.824课程,在课程中lab2需要实现Raft算法,Raft算法的原理细节在我的另外一篇博客中,在这里就不再赘述了。Raft中Leader Election在Raft算法中,当一个节点变为candidate节点之后,其他的节点需要对其进行投票,当其获得超过半数票数时即当选,反之落选。下面将对该过程进行简单的模拟实践。实践思路1.首先向其他节点发送投票请求;2.根据投票请求的结果进行票数计算;3.根据票数的结果,得出投票的结果。那么在第一个步骤中,一定是并发
原创
发布博客 2021.03.04 ·
58 阅读 ·
1 点赞 ·
2 评论

GO语言多线程实践-1

写在前面其实不论是哪一种编程语言,在当下这种大数据的业务压力下,多线程都是重中之重。本文的一些关于go语言的多线程实践都是基于MIT6.824课程总结而来的。多线程通信使用channel通道关于利用channel实现多线程通信的方法,在另外一篇博客中已经提及了,需要注意的主要是其可能造成的死锁问题,本文主要介绍下面这种多线程通信的方式。使用全局变量+锁其实这种方法与channel最大的不同就是,前者是go语言所独有的特性,因为其天然的可以集成多线程并发。这种方法在很多编程语言中都有,譬如Java
原创
发布博客 2021.03.03 ·
190 阅读 ·
0 点赞 ·
0 评论

Raft算法详解

为什么会有这篇总结留下这篇总结的原因还是因为MIT6.824课程,分布式系统中的Raft算法是非常重要的,首先给出一篇很好的参考博客,供自己以后查看。持续更新…
原创
发布博客 2021.02.23 ·
96 阅读 ·
0 点赞 ·
0 评论

Linux下查询本机cpu、内存、磁盘利用率情况

查询主机各类资源的利用率情况是非常重要的,这里直接给出大佬的文章,以供自己以后进行参考。
转载
发布博客 2021.02.08 ·
176 阅读 ·
0 点赞 ·
0 评论
加载更多