- 博客(121)
- 资源 (9)
- 收藏
- 关注
原创 Linux命令之进程相关命令
查看端口占用状态netstat -tunlp | grep <port>通过上述命令能看到某个端口具体被哪个进程(可以看到进程号)占用。杀死进程普通杀死kill <进程号>强制杀死kill -KILL <进程号>彻底杀死kill -9 <进程号>...
2021-01-03 10:05:16
335
原创 安装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
513
原创 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
536
原创 解决zsh: permission denied:
原因通常是用户没有脚本的执行权限。解决方案可以输入以下语句为用户添加执行权限:chmod u+x <脚本文件>
2020-12-22 10:45:42
25819
1
原创 解决Mac终端启动每次都要source ~/.bash_profile才能使环境变量生效
原因zsh加载的是 ~/.zshrc文件,而 ‘.zshrc’ 文件中并没有定义任务环境变量。解决方案vim编辑~/.zshrc,在最后加上一句:source ~/.bash_profile这样每次终端启动会先加载~/.zshrc,在加载~/.zshrc的最后加载了~/.bash_profile。...
2020-12-22 10:42:01
2066
原创 go mod依赖管理
前导如果GoLand没有完成go mod的相关配置,请参考这篇文章https://blog.youkuaiyun.com/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
346
1
原创 使用Go Module引入第三方库时GoLand无法代码提示
需要在GoLand中设置proxy第一种设置方式在创建项目的时候就设置好,我设置的是七牛云的。第二种设置方式在项目里进行设置,左上角GoLand->Preferences。建议在go env环境变量里也进行设置打开终端,输入以下命令:go env -w goproxy=https://goproxy.cn,direct...
2020-12-19 12:02:37
2466
1
原创 Mac使用积累
截屏快捷键cmd+shift+4可以选取截屏位置。打开多个同一应用程序有时候打开一个iTerm不够,需要打开多个iTerm,或者有时候打开一个浏览器不够,需要打开多个浏览器,直接按快捷键cmd+n。
2020-12-19 11:24:38
199
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
162
1
原创 国内安装homebrew
打开终端输入以下命令:/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"随便选择一个下载源然后回车:最后一路yyy即可。
2020-12-14 19:38:04
249
原创 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
2385
原创 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
324
原创 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
428
原创 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
651
原创 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
3898
1
原创 Golang有关字符串的API
字符串的创建str := "HelloWorld"获取字符串长度通过内置len函数获取字符串长度str := "cooper"fmt.Printf("字符串的长度是%d\n", len(str))输出:字符串的长度是6需要注意的是,内置len函数用在字符串上其实是获取了字符串占用的字节数,对于英文字符来说一个字符占一个字节,因此英文字符串可以使用内置len函数获取长度。到那时对于中文字符来说,就不能使用len函数获取字符串长度了,因为一个中文字符不只是占用一个字节。保险起.
2020-11-22 14:50:09
293
原创 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
492
2
原创 Golang有关map的API
if _, ok := mp[key]; ok { // mp中存在键key} else { // mp中不存在键key}
2020-11-21 22:13:13
710
原创 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
135
原创 iOS好友列表根据姓氏分类显示实现
最终效果UI层面按照姓氏分门别类显示是通过UITableView的分组(section)以及HeaderView和FooterView来实现的。通过HeaderView显示姓氏,通过最后一个section的FooterView来显示“没有更多联系人啦~”。算法与数据结构层面整个数据层面是一个二维数组。传入原始数据后,定义自己的数据结构friendGroup(NSMutableArray)存放联系人组别信息,其每一个Object又是一个存放真正联系人的NSMutableArray。
2020-11-02 15:41:57
282
原创 UITableView左滑删除实现
UI层面需要做的事情为tableView设置好delegate后,需要实现delegate方法:- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewCellEditingStyleDelete;}实现以上方法的作用是实现左滑显示删除(Delete)按钮。
2020-11-02 15:26:23
993
原创 Git图形界面工具——SourceTree
生成本地仓库从URL克隆源URL可以去远程仓库查看,以github为例,可以在这里复制:选择一个目标路径后“克隆”就生成成功了。主要功能查看本地分支查看远程分支检出远程分支到本地分支...
2020-10-27 15:51:30
320
原创 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
356
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
458
原创 Linux命令之基本命令
基本命令创建目录/文件夹mkdir <dirname>删除目录/文件夹rm -rf <dirname>创建文件touch <filename>删除文件rm <filename>
2020-10-23 13:09:08
250
原创 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
280
原创 Git使用
Git简介Git是强大的版本管理工具,它不是专门用来管理代码的,准确的说,它可以管理一切文件。有文件夹的地方,就能创建仓库(repository)。仓库分为两种,远程仓库和本地仓库,用户可以从远程仓库克隆(clone)一个仓库到本地,当然也可以创建本地仓库与远程仓库建立联系。创建本地仓库命令行进入一个文件夹(目录dir)的根目录,键入以下命令:git init其作用是初始化一个git仓库,输入git branch查看分支就会看到一个名为master的分支。git branch
2020-10-17 17:24:38
209
原创 这次不怕面试官再问LRU!
LRU是Least Recently Used的缩写,即最近最少使用,也叫最近最久未使用,最初应用于操作系统的页面置换算法。当发生缺页中断后,选择将最久未使用的那一个页面替换出去。实践表明,LRU可以最大化页面页面利用率。LRU除了应用在操作系统层面,常被应用到缓存系统的设计中,很多著名的缓存系统,比如iOS中的YYCache、远程字典服务Redis中都使用了LRU。那么为什么要设计缓存系统呢?因为磁盘的访问速度要比内存的访问速度慢很多,如果所有数据都存储在磁盘上访问的时延会很大,而所有数据都存放.
2020-08-06 14:03:34
217
原创 探秘中国硅谷
如果说千禧年的中国硅谷是北京中关村,那么新时代的中国硅谷一定是深圳南山,如果位置再精确一点,是南山后海这一片。上图为腾讯滨海大厦视角。在这里几乎每走10步,就可以看到一个咖啡厅。咖啡毕竟是现代工作充电必备,所以这种地方咖啡店很多。附近著名的科技公司有微软、百度、芒果网和腾讯。上图为微软科通大厦。上图为深圳百度国际大厦。百度国际大厦有两座,挨着。上图为芒果网大厦。这个芒果网不是湖南卫视的那个芒果TV,我一开始也以为是芒果TV,人家其实是一家...
2020-07-04 19:52:12
3895
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
263
原创 手撕归并排序
#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
257
原创 最长上升子序列
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
144
原创 深搜回溯与不回溯的区别
一、需要不断尝试以达到最终目的时需要回溯,比如数独、全排列。以下为全排列代码:#include <iostream>#include <vector>#include <algorithm>using namespace std;string str;string temp;vector<bool> vis;void dfs(...
2020-03-13 12:09:09
2090
原创 Java脚本操作Excel
操作之前需求导入jxl.jar这个jar包。需求描述:1.表格中C栏为原始打分数据,D栏为建议原始打分数据不变、提高或者减少,E栏是需要打分的数据栏,根据D栏的建议进行打分,F栏为打分的示例。2.大家在D栏建议的基础上打分,打分的规则是在原始的分数上(+-5)例如:原始分数为30建议分数为增大,则打分为(31-35都可以),但是所有建议增大的项目不能都增加相同的数值,比如都增加2,即...
2020-03-02 16:24:42
733
原创 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
708
原创 字节跳动抖音ios客户端开发实习生一面面经
整个一面过程持续了接近一个小时。面试官是字节跳动校招宣传片中的人物,我对他印象很深刻,因为他是北大法学院的毕业生转行做了程序员。零、自我介绍一、问项目1.在做中国象棋游戏这个项目中遇到的最棘手的问题是什么?答:人机博弈中最佳走棋步骤的生成。2.你是如何解决这一问题的?答:min-max算法。但是递归层数太多的话运行到后面会崩掉。3.min-max算法中有个剪枝你了解吗?...
2020-02-10 14:41:03
4340
原创 PAT特殊错误
1.浮点错误除数为0就会报浮点错误。2.段错误有可能是数组越界,也有可能是队列、栈等已经空了而继续出队、出栈导致的。3.空间超限使用<cstring>下的初始化函数memset可能会导致空间超限,虽然开的数组不足以使空间超限,但是我们都知道使用memset初始化比较方便快捷,世间万物都遵循等价交换规则,方便快捷也是有代价的,那就是用空间来换时间。我以前总是使用mem...
2020-01-25 13:47:37
1066
美发沙龙管理平台.rar
2019-09-26
使用C++开发的双人五子棋游戏(附源代码)
2018-11-21
使用C++开发的象棋人工智能
2018-11-02
C语言实现的文字加密与解密小程序(附源代码)
2018-10-01
一种新的模式匹配(模糊搜索)算法
2018-09-24
使用C++开发的中国象棋游戏(附源代码)
2018-09-23
增加了模糊搜索功能的学生成绩管理系统
2018-09-22
基于Linux系统下gtk开发的学生成绩管理系统
2018-09-22
C语言编写的无图形界面的学生成绩管理系统
2018-09-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人