- 博客(16)
- 收藏
- 关注
原创 go module 与 package
笔者在学习 golang 语言的时候,对其版本管理产生了诸多困惑,于是花费了几天时间搜集了很多资料,试图理解其背后的原理,现将搜集的资料整理成下文。
2023-03-24 15:23:51 1064
原创 跳表 skiplist 简介
跳表是一个包含随机算法的数据结构,跳表的查找、插入、删除的平均时间复杂度都是 O(logn),而且可以按照范围区间查找元素,空间复杂度是 O(n)。
2023-03-16 22:10:33 1148
原创 PKI 简介
PKI 全称为 Public Key Infrastructure,中文翻译为公钥基础设施,是一组由硬件、软件、参与者、管理政策与流程组成的基础架构,其目的在于创造、管理、分配、使用、存储以及撤销数字证书。
2023-03-16 17:17:07 2663
原创 虚拟机安装Arch Linux
关于图形界面与命令行界面各有优势,在编译项目的场景下,更倾向于运行命令脚本自动化构建,但是在Windows系统中搭建Shell环境及其复杂,往往功能不全,很容易出现各种小问题。在Windows中也有很多模拟Linux环境的应用,最常见的有Cygwin,MSYS2,WSL等,我使用过其中的几个,使用体验不佳,普遍存在很多问题,而且极易造成系统混乱。虚拟机成为优雅的在Windows中使用Linux系统的方案。
2022-11-24 15:51:59 862
原创 Linux系统连接以太网与WIFI的方法
WPA(Wi-Fi Protected Access),意即“Wi-Fi访问保护”,是一种由Wi-Fi联盟制订与发布,用来保护无线网络(Wi-Fi)访问安全的技术标准。),Captive portal,又名强制网络门户、强制主页,是在授予新连接至 WIFI 或接受最终用户许可协议/可接受使用策略的着陆页或登录页。激活以太网卡,插入网线,基本就可以连接到网络了,一般不需要选择网络和输入密码,如果网络未连接,则检查网卡,网络通路等。如果网卡存在,驱动没有正确加载,则需要先安装相应的驱动。
2022-10-31 10:11:40 2981
原创 Linux系统中与网络配置相关的工具
大家平时经常碰到的网络是局域网(LAN),局域网又分为有线局域网和无线局域网(WLAN),其中以太网(Ethernet)是最常见的有线局域网,WIFI是最常见的无线局域网。除此之外,还有拨号网络PPPoE.
2022-10-31 10:07:35 1213
原创 LaTeX伪代码
在LaTeX中排版算法或者伪代码有以下几种选择:1. 使用algorithm包并选择algpseudocode OR compatible OR algorithmic其中一个包排版算法体。2. 使用algorithm与algorithmicx包并选择algpseudocode OR algcompatible OR algpascal OR algc其中一个包排版算法。3. 使用algorithm2e包排版算法。
2022-10-10 20:43:30 10055
原创 IDEA Maven项目源码移植问题
问题描述笔者在将IDEA Maven项目源代码从Windows IDEA平台移植到Linux IDEA平台,更改相应配置后重新构建项目时,出现了以下问题:org.codehaus.plexus.component.repository.exception.ComponentLookupException: com.google.inject.ProvisionException: Unable to provision, see the following errors:1) Error injec
2022-03-22 11:39:02 686
原创 Maven自动化的构建工具
文章目录Maven自动化的构建工具什么是MavenMaven能做什么Maven中的概念约定的目录结构配置文件POM仓库管理生命周期插件和命令Maven命令Maven自动化的构建工具什么是MavenMaven是Apache基金会的开源项目,使用Java语法开发,Maven是项目的自动化构建工具,管理项目的依赖。类似的构建工具还有:Ant,GradleMaven能做什么(1)项目的自动构建,帮助开发人员做项目代码的编译、测试、打包、安装、部署等工作;(2)管理依赖 依赖:项目
2022-03-20 17:16:53 564
原创 Linux服务管理命令service与systemctl
service命令Ubuntu中service命令用于对系统服务进行管理,service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务。 可通过sercice SCRIPT COMMAND命令管理服务,SCRIPT为/etc/init.d/中存放的可执行脚本文件:service SCRIPT start #启动服务service SCRIPT stop #停止服务service SCRIPT restart #重
2021-07-24 09:10:07 14321
原创 异步编程与Promise
异步编程通常来说,程序都是顺序执行的,同一时刻只会发生一件事。如果一个函数依赖于另一个函数的结果,它只能等待那个函数结束才能继续执行,从用户的角度来说,整个程序才算运行完毕。线程一个线程是一个基本的处理过程,程序用它来完成任务。每个线程一次只能执行一个任务:Task A --> Task B --> Task C 每个任务顺序执行,只有前面的结束了,后面的才能开始。现在的计算机大都有多个内核(core),因此可以同时执行多个任务。支持多线程的编程语言可以使用计算机的多个内核,同时
2021-07-22 10:51:15 220
原创 Java中static与final关键字
static关键字Java中static关键字可以用来修饰类的成员变量和成员方法,此外,还可以编写static代码块来优化程序性能。static成员变量static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。static成员变量的初始化顺序按照定义的顺序进行初始化。static成员变量的定义方法如下:p
2021-07-15 17:45:12 197
原创 Java一切皆对象
文章目录前言用引用操作对象必须由你创建所有对象存储到什么地方特例:基本类型Java中的数组永远不需要销毁的对象创建新的数据类型字段和方法基本成员默认值方法、参数和返回值构建一个Java程序名字可见性运用其他构件static关键字基于《Java编程思想》(Thinking in Java Fourth Edition)整理,记录学习所获。阅读《Java编程思想》需要有一定编程基础,最好提前了解过一些有关C++编程的知识。前言尽管Java是基于C++的,但相比之下,Java是一种更“纯粹”的面向对象程序
2021-07-09 14:53:46 598
原创 Ubuntu18中安装GCC编译器
通常所说的GCC是GUNCompilerCollection的简称,是由GNU开发的编程语言编译器。GNU编译器套件包括C、C++、Objective-C、Fortran、Java、Ada和Go语言前端,也包括了这些语言的库。GCC的初衷是为GNU操作系统专门编写的一款编译器。GNU系统是彻底的自由软件。大家可以进入GCC官网查看相关信息。......
2020-07-14 21:55:03 3967
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人