自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只在校程序猿的技术贴

用程序谱写人生,用代码改变世界。

  • 博客(121)
  • 资源 (9)
  • 收藏
  • 关注

原创 Linux环境下格式化显示json文件内容

python3 -m json.tool filename我在test.data里编辑了如下内容:

2021-06-01 16:24:59 865

原创 Linux命令之磁盘相关

查看磁盘空间使用df查看磁盘各个分区所用文件系统df -T下图Type项就是分区所用文件系统:

2021-01-05 19:01:01 255

原创 Linux命令之进程相关命令

查看端口占用状态netstat -tunlp | grep <port>通过上述命令能看到某个端口具体被哪个进程(可以看到进程号)占用。杀死进程普通杀死kill <进程号>强制杀死kill -KILL <进程号>彻底杀死kill -9 <进程号>...

2021-01-03 10:05:16 253

原创 安装oh my zsh时遇到Failed to connect to raw.githubusercontent.com port 443: Connection refused

原因:对于raw.githubusercontent.com的DNS域名解析出现问题,需要手动修改/etc/hosts文件,将raw.githubusercontent.com映射到一个ip地址上。安装oh my zshsh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"出现443错误curl: (7) Failed to conn.

2020-12-27 11:08:00 420

原创 Mac命令行启动mysql

查看mysql是否启动sudo mysql.server status如果提示ERROR! MySQL is not running则说明没有启动。启动mysqlsudo mysql.server start重启mysqlsudo mysql.server restart

2020-12-22 10:54:26 457

原创 解决zsh: permission denied:

原因通常是用户没有脚本的执行权限。解决方案可以输入以下语句为用户添加执行权限:chmod u+x <脚本文件>

2020-12-22 10:45:42 25047 1

原创 解决Mac终端启动每次都要source ~/.bash_profile才能使环境变量生效

原因zsh加载的是 ~/.zshrc文件,而 ‘.zshrc’ 文件中并没有定义任务环境变量。解决方案vim编辑~/.zshrc,在最后加上一句:source ~/.bash_profile这样每次终端启动会先加载~/.zshrc,在加载~/.zshrc的最后加载了~/.bash_profile。...

2020-12-22 10:42:01 1972

原创 go mod依赖管理

前导如果GoLand没有完成go mod的相关配置,请参考这篇文章https://blog.csdn.net/weixin_41676881/article/details/111402439。go mod tidy命令想要引入哪些包,可以先写到相关文件的import处,然后在terminal中输入以下命令:go mod tidy通过打印的内容可以看出依赖的包已经被下载下来了。观察go.mod文件,发现这个依赖被写到了require处。另外,go mod tidy会移除不再

2020-12-19 12:29:05 226 1

原创 使用Go Module引入第三方库时GoLand无法代码提示

需要在GoLand中设置proxy第一种设置方式在创建项目的时候就设置好,我设置的是七牛云的。第二种设置方式在项目里进行设置,左上角GoLand->Preferences。建议在go env环境变量里也进行设置打开终端,输入以下命令:go env -w goproxy=https://goproxy.cn,direct...

2020-12-19 12:02:37 2332 1

原创 Mac使用积累

截屏快捷键cmd+shift+4可以选取截屏位置。打开多个同一应用程序有时候打开一个iTerm不够,需要打开多个iTerm,或者有时候打开一个浏览器不够,需要打开多个浏览器,直接按快捷键cmd+n。

2020-12-19 11:24:38 115 1

原创 MacOS安装MySQL

使用homebrew一个命令安装MySQLbrew install mysql修改root密码刚安装MySQL时root账户是没有密码的,因此可以免密登录。mysql -u root8.0版本的MySQL修改密码可以这样操作:alter user 'root'@'localhost' identified with mysql_native_password by 'root';我把root账户的密码也设成了root。验证修改密码是否成功mysql -u root

2020-12-19 00:29:27 111 1

原创 国内安装homebrew

打开终端输入以下命令:/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"随便选择一个下载源然后回车:最后一路yyy即可。

2020-12-14 19:38:04 182

原创 GoLand使用积累

删除光标所在行cmd + X

2020-12-11 16:07:36 128

原创 Golang类型的String()方法

作用用于定制fmt.Println(x)、fmt.Printf("%v", x)、fmt.Print(x)时输出的内容。示例package mainimport "fmt"type Couple struct { Husband string Wife string}func (self Couple) String() string { return "(husband:" + self.Husband + ", wife:" + self.Wife +

2020-12-11 14:29:35 2294

原创 Mac上安装Golang开发环境

下载https://golang.google.cn/dl/安装按照安装器的指引安装即可,可以一路点击『继续』。测试是否安装成功打开terminal后新建一个文件main.go,编辑如下代码后保存退出:package mainimport "fmt"func main() { fmt.Println("Hello World")}在命令行下输入如下命令,如果成功打印出『Hello World』,则安装成功。go run main.go...

2020-12-10 20:06:33 260

原创 Golang中面向对象的实现

Golang在面向对象方面与其他语言的区别Golang中没有类(class)的概念,但是有结构(struct)的概念。在其他语言(比如C++)中,属性是与方法绑定在一起的,而在go中属性与方法是松耦合的。一个简单的结构:type Student struct { name string id string score int}方法方法写在结构的外面,比如我们要为Student对象添加getter和setter,我们应该在Student结构外添加如下代码:

2020-12-09 21:00:18 371

原创 Golang包(package)管理

Golang除提供内置函数外,还提供了各种标准库,这些标准库都是用package来组织的。$GOROOT与$GOPATH在讲package管理之前,需要明确两个环境变量,$GOROOT和$GOPATH。$GOROOT$GOROOT目录是存放Go内置工具的,包括各种标准库,比如常用的fmt包、strings包、strconv包等都在这个目录的子目录下。只有指定了$GOROOT,才能顺手的使用标准库。如果没有指定$GOROOT还import了"fmt",编译时可能就会报错,因为编译器不知道fmt

2020-11-23 13:46:45 569

原创 Golang对切片进行排序

在Golang中排序可以使用标准库中的sort包。基本排序对int的从小到大排序arr := []int{1, 3, 5, 7, 9, 2, 4, 6, 8, 0}sort.Ints(arr)fmt.Println(arr)输出:[0 1 2 3 4 5 6 7 8 9]对float的从小到大排序arr := []float64{1.1, 3.3, 5.5, 7.7, 9.9, 2.2, 4.4, 6.6, 8.8, 0.0}sort.Float64s(arr)fmt..

2020-11-22 20:41:12 3743 1

原创 Golang有关字符串的API

字符串的创建str := "HelloWorld"获取字符串长度通过内置len函数获取字符串长度str := "cooper"fmt.Printf("字符串的长度是%d\n", len(str))输出:字符串的长度是6需要注意的是,内置len函数用在字符串上其实是获取了字符串占用的字节数,对于英文字符来说一个字符占一个字节,因此英文字符串可以使用内置len函数获取长度。到那时对于中文字符来说,就不能使用len函数获取字符串长度了,因为一个中文字符不只是占用一个字节。保险起.

2020-11-22 14:50:09 237

原创 Golang内置函数

makemake可以用于构造map和切片。构造mapmp := make(map[int]bool)构造切片slice := make([]int, 0)new开辟一块内存空间,比如struct经常使用new创建,返回的是这块内存空间的地址,可以传给一个指针。len用于获取切片/字符串的长度。append用于往切片中动态添加元素。slice = append(slice, element)...

2020-11-21 22:19:40 394 2

原创 Golang有关map的API

if _, ok := mp[key]; ok { // mp中存在键key} else { // mp中不存在键key}

2020-11-21 22:13:13 641

原创 Linux压缩打包

使用tar命令打包压缩成后缀名为.tar.gz的压缩包压缩tar -zcvf 压缩包名 被压缩目录例如我要压缩当前目录下的queue目录,我可以这样写:tar -zcvf queue.tar.gz ./queue/解压tar -zxvf 压缩包名例如我要解压刚刚压缩好的queue.tar.gz压缩包,就可以这样写:tar -zxvf queue.tar.gz压缩成后缀名为.zip的压缩包压缩zip -r 压缩包名 被压缩目录例如我们还是压缩当前.

2020-11-16 19:38:43 106

原创 iOS好友列表根据姓氏分类显示实现

最终效果UI层面按照姓氏分门别类显示是通过UITableView的分组(section)以及HeaderView和FooterView来实现的。通过HeaderView显示姓氏,通过最后一个section的FooterView来显示“没有更多联系人啦~”。算法与数据结构层面整个数据层面是一个二维数组。传入原始数据后,定义自己的数据结构friendGroup(NSMutableArray)存放联系人组别信息,其每一个Object又是一个存放真正联系人的NSMutableArray。

2020-11-02 15:41:57 248

原创 UITableView左滑删除实现

UI层面需要做的事情为tableView设置好delegate后,需要实现delegate方法:- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewCellEditingStyleDelete;}实现以上方法的作用是实现左滑显示删除(Delete)按钮。

2020-11-02 15:26:23 845

原创 Git图形界面工具——SourceTree

生成本地仓库从URL克隆源URL可以去远程仓库查看,以github为例,可以在这里复制:选择一个目标路径后“克隆”就生成成功了。主要功能查看本地分支查看远程分支检出远程分支到本地分支...

2020-10-27 15:51:30 247

原创 Go语言编程实践

在终端上运行Go语言程序我们先编写一个最简单的golang程序main.go:package mainimport "fmt"func main() { fat.Println("Hello World!")}直接在终端上输入以下命令,其作用是编译和运行golang程序。go run main.go...

2020-10-25 17:45:10 287 4

原创 Shell脚本编程实践

Shell简介Shell脚本其实就是一系列的Linux命令加上逻辑控制,用于在Linux操作系统上做一些批量自动化的处理。Shell脚本的后缀名Shell脚本文件的后缀名为.sh,并不是缺了这个后缀名就无法执行,而是加上这个后缀名可以让用户知道这是一个Shell脚本。Shell脚本的结构第一行是#! /bin/bash。下面为一个最简单的Shell脚本:#! bin/bashecho "This is my first shell script"Shell脚本的执行编

2020-10-24 15:34:05 371

原创 Linux命令之基本命令

基本命令创建目录/文件夹mkdir <dirname>删除目录/文件夹rm -rf <dirname>创建文件touch <filename>删除文件rm <filename>

2020-10-23 13:09:08 203

原创 Git常见错误解决

本地分支与远程分支不一致error: failed to push some refs to 'xxx(分支名)'Updates were rejected because the tip of your current branch is behind its remote counterpart. Integrate the remote changes (e.g. 'git pull ...') before pushing again.如果能够保证本地分支是最终正确的分支,可以通过强推.

2020-10-21 11:47:44 212

原创 Git使用

Git简介Git是强大的版本管理工具,它不是专门用来管理代码的,准确的说,它可以管理一切文件。有文件夹的地方,就能创建仓库(repository)。仓库分为两种,远程仓库和本地仓库,用户可以从远程仓库克隆(clone)一个仓库到本地,当然也可以创建本地仓库与远程仓库建立联系。创建本地仓库命令行进入一个文件夹(目录dir)的根目录,键入以下命令:git init其作用是初始化一个git仓库,输入git branch查看分支就会看到一个名为master的分支。git branch

2020-10-17 17:24:38 176

原创 这次不怕面试官再问LRU!

LRU是Least Recently Used的缩写,即最近最少使用,也叫最近最久未使用,最初应用于操作系统的页面置换算法。当发生缺页中断后,选择将最久未使用的那一个页面替换出去。实践表明,LRU可以最大化页面页面利用率。LRU除了应用在操作系统层面,常被应用到缓存系统的设计中,很多著名的缓存系统,比如iOS中的YYCache、远程字典服务Redis中都使用了LRU。那么为什么要设计缓存系统呢?因为磁盘的访问速度要比内存的访问速度慢很多,如果所有数据都存储在磁盘上访问的时延会很大,而所有数据都存放.

2020-08-06 14:03:34 164

原创 探秘中国硅谷

如果说千禧年的中国硅谷是北京中关村,那么新时代的中国硅谷一定是深圳南山,如果位置再精确一点,是南山后海这一片。上图为腾讯滨海大厦视角。在这里几乎每走10步,就可以看到一个咖啡厅。咖啡毕竟是现代工作充电必备,所以这种地方咖啡店很多。附近著名的科技公司有微软、百度、芒果网和腾讯。上图为微软科通大厦。上图为深圳百度国际大厦。百度国际大厦有两座,挨着。上图为芒果网大厦。这个芒果网不是湖南卫视的那个芒果TV,我一开始也以为是芒果TV,人家其实是一家...

2020-07-04 19:52:12 3796 2

原创 手撕快速排序

#include <cstdio>int arr[]={3,2,1,0,5,6,4,9,11,8};int oneRound(int arr[],int low,int high){ int key=arr[low]; while(low<high) { while(low<high) { ...

2020-03-13 12:11:24 200

原创 手撕归并排序

#include <cstdio>#include <vector>using namespace std;void Merge(vector<int> &arr,int low,int mid,int high){ int i=low; int j=mid+1; vector<int> temp; ...

2020-03-13 12:11:11 208

原创 最长上升子序列

lower_bound(arr.begin(),arr.end(),val):在一个从小到大排好序的数组arr的[begin,end)区间通过二分查找返回第一个大于等于val的位置。upper_bound(arr.begin(),arr.end(),val):在一个从小到大排好序的数组arr的[begin,end)区间通过二分查找返回第一个大于val的位置。lower_bound(arr....

2020-03-13 12:10:12 110

原创 深搜回溯与不回溯的区别

一、需要不断尝试以达到最终目的时需要回溯,比如数独、全排列。以下为全排列代码:#include <iostream>#include <vector>#include <algorithm>using namespace std;string str;string temp;vector<bool> vis;void dfs(...

2020-03-13 12:09:09 1874

原创 Java脚本操作Excel

操作之前需求导入jxl.jar这个jar包。需求描述:1.表格中C栏为原始打分数据,D栏为建议原始打分数据不变、提高或者减少,E栏是需要打分的数据栏,根据D栏的建议进行打分,F栏为打分的示例。2.大家在D栏建议的基础上打分,打分的规则是在原始的分数上(+-5)例如:原始分数为30建议分数为增大,则打分为(31-35都可以),但是所有建议增大的项目不能都增加相同的数值,比如都增加2,即...

2020-03-02 16:24:42 687

原创 String、StringBufffer与StringBuilder的区别

public class Main { static void changeValue(String str) { str="def"; } static void changeValue(StringBuffer str) { str.append("def"); } static void changeValue(StringBuilder str) { str...

2020-02-27 12:16:09 667

原创 字节跳动抖音ios客户端开发实习生一面面经

整个一面过程持续了接近一个小时。面试官是字节跳动校招宣传片中的人物,我对他印象很深刻,因为他是北大法学院的毕业生转行做了程序员。零、自我介绍一、问项目1.在做中国象棋游戏这个项目中遇到的最棘手的问题是什么?答:人机博弈中最佳走棋步骤的生成。2.你是如何解决这一问题的?答:min-max算法。但是递归层数太多的话运行到后面会崩掉。3.min-max算法中有个剪枝你了解吗?...

2020-02-10 14:41:03 4158

原创 PAT特殊错误

1.浮点错误除数为0就会报浮点错误。2.段错误有可能是数组越界,也有可能是队列、栈等已经空了而继续出队、出栈导致的。3.空间超限使用<cstring>下的初始化函数memset可能会导致空间超限,虽然开的数组不足以使空间超限,但是我们都知道使用memset初始化比较方便快捷,世间万物都遵循等价交换规则,方便快捷也是有代价的,那就是用空间来换时间。我以前总是使用mem...

2020-01-25 13:47:37 863

美发沙龙管理平台.rar

这是一款使用C#开发的美发沙龙管理平台,用于理发店的日常管理,包括服务登记、会员办理、员工管理、数据统计等功能。 其具备以下优点: 1.设计上灵活易用,会员可以选择绑定会员卡,也可以选择只使用手机号作为扣费凭证,绑定会员卡也无需缴纳押金,只需要让校园卡、门禁卡、水卡等具有卡ID的功能卡作为会员卡,绑定只是几秒钟的问题。 2.以多种角度向经营者展示统计数据,帮助经营者改进经营策略和员工时间安排策略。 3.经营者可以任意设置提成比例,每完成一单服务可以给参与服务的员工一定的提成,以激励员工的工作积极性。 4.用户友好,采用智能算法帮助用户在精简操作的情况下精准扣费。

2019-09-26

使用C++开发的双人五子棋游戏(附源代码)

这是一款使用Qt和C++开发的中国象棋游戏Windows应用程序,里面有一个打包好的可执行程序WeGo,整个项目的源代码在压缩包W_GO里。

2018-11-21

使用C++开发的象棋人工智能

这是一个打包好的成品,想放到这里与大家分享。希望大家可以下载体验一下,帮我找找bug(可能会有潜在bug),找到的bug可以反馈到我的邮箱:[email protected]

2018-11-02

C语言实现的文字加密与解密小程序(附源代码)

这是一款使用C语言开发的用于文字信息的加密与解密的小程序,压缩包里有一个可以直接运行的扩展名为.exe的应用程序以及一个包含整个C语言项目的文件夹。加密与解密的原理简单且极其容易实现,本人博客《C语言文字加密程序的实现》详细介绍了整个加密与解密的过程。欢迎大家下载学习。

2018-10-01

一种新的模式匹配(模糊搜索)算法

这是我本人写的一篇论文,无奈因为本人缺乏深厚的文字功底和理论能力,论文中出现大篇幅源代码,且不会借鉴他人的文献,被本校的学报退稿了,现在想要拿出来与大家分享。本论文所研究的模式匹配算法是一种不同于传统的KMP算法和BM算法的前所未有的模式匹配算法——字符串拆分算法。本论文未在任何正式期刊上发表过,可以通过论文查重,大家可以下载拿去修改修改当做自己的毕业设计(论文)。如果有条件的话,在正式期刊上发表我也不介意,但是希望发表之后在作者那一栏上给我的名字留个位置。

2018-09-24

使用C++开发的中国象棋游戏(附源代码)

这是一款使用Qt和C++开发的中国象棋游戏Windows应用程序,里面有已经打包好的一个名为“LittleBoxChess”的Windows可移植应用程序以及一个名为“Chess”的文件夹(里面是整个项目的源代码)。

2018-09-23

增加了模糊搜索功能的学生成绩管理系统

这是一款可以在CentOS Linux系统里面运行的使用gtk开发的有简易数据库的学生成绩管理系统。登录界面的账号为root,密码为111111。学号是10位不允许重复的数字字符串,还有对学生成绩等的输入检验,程序容错性高。在按学号查找和按姓名查找的功能里增加了模糊搜索,例如输入“广”即可将所有姓名中带有“广”字的学生的信息查找出来。想要学习相关的技术可以查看我的博客《用C语言做模糊搜索》。欢迎大家下载。

2018-09-22

基于Linux系统下gtk开发的学生成绩管理系统

这是一款可以在CentOS Linux系统里面运行的使用gtk开发的有简易数据库的学生成绩管理系统,可以实现导入学生信息、修改学生成绩、删除学生信息、查看奖学金获奖名单、查看未挂科学生信息、查看挂科学生信息、按学号查找、按姓名查找、清空数据库等功能。登录界面的账号为root,密码为111111。学号是10位不允许重复的数字字符串,还有对学生成绩等的输入检验,程序容错性高。欢迎大家下载。

2018-09-22

C语言编写的无图形界面的学生成绩管理系统

这是一个只可以在黑框框里跑的学生成绩管理系统,只需要C语言编译器就可以运行(几乎适配所有的编译器,且只有一个.c文件和三个作为数据库的txt文件),能够实现录入基础数据、显示奖学金获奖名单、显示成绩排名、查看未挂科学生、查看挂科学生、追加基础数据、删除学生信息、修改学生信息、按学号查找、按姓名查找、清空数据库等功能。代码中对于各种函数的功能有详细的注释。使用文件读写操作实现了一个简易的对于数据库的增删改查。不要觉得数据库多么高大上,仅仅用txt文件就能够作为数据库。欢迎大家下载学习。

2018-09-22

空空如也

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

TA关注的人

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