![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
「已注销」
这个作者很懒,什么都没留下…
展开
-
golang 接口相关知识
1.一个简单的实现package mainimport ( "errors" "fmt")type IDatabase interface{ Connect() error // 接口不指定参数,返回error Disconnect() error}type Mysql struct{ DBname string isConnect bool}// 实现IDatabase接口func (mysql *Mysql)Connect()error{ fmt.Println(原创 2022-04-08 17:18:25 · 394 阅读 · 0 评论 -
golang 并发、反射知识笔记
1. 性能降低,但是高效率的并发安全mapimport ( "sync")func main(){ var mymap sync.Map for i:=0;i<100;i++{ go writeM(mymap,i,i+1) go readM(mymap,i) }}func readM(mymap sync.Map,key,int)int{ if v,ok :=mymap.Load(key);ok{ // 用Load来获取 return v.(int) // 获取的v是原创 2022-04-07 10:30:05 · 265 阅读 · 0 评论 -
Golang 中sort排序不改变相同值相对顺序
今天在用golang自带的sort()排序时遇到的不稳定情况如果使用Sort或者Slice进行排序,若有相同的值,有可能改变它们的相对顺序// 相关API,前两个都会改变相对顺序,最后一个不会sort.Sort(data interface) // 需要实现Len(),Swap(),Less()函数sort.Slice([]struct ,func(i,j int)bool{ return s[i].age < s[j].age })sort.SliceStable([]struct ,fu原创 2022-03-11 14:43:48 · 1710 阅读 · 0 评论 -
Golang实现基本查找算法
package mainimport (“bufio”“fmt”“os”“strconv”“strings”)func binarySearch(data []int, key int) int {// 二分查找left := 0right := len(data) - 1for {if left > right { // 小于等于break}mid := (right-left)/2 + left // 等价于 (a+b)/2,防止a+b过大if data[mid]原创 2022-03-14 14:28:43 · 177 阅读 · 0 评论 -
Golang实现基本排序算法
手写相关排序算法 (待更新)package mainimport ( "bufio" "fmt" "os" "strconv" "strings")func simpleSort(data *[]int) { // O(n^2) ,每次从子列表找出最小的位置和当前位置交换 for i := 0; i < len(*data); i++ { minIndex := i for j := i; j < len(*data); j++ { // 从当...原创 2022-03-14 11:04:09 · 374 阅读 · 0 评论 -
conda和docker的一些记录
0.复盘最近在接触docker的过程中,发现conda的使用不可避免,在docker用到镜像开启新的容器中势必要再配一遍anaconda,而我每次都要搜索一大堆配置指令,在搜索过程中就耗费了大量时间,这次必须做一次完整的总结。1.conda的linux安装1.1 配置环境在root权限下:(否则加root)yum install -y vim (这是linux安装工具的命令)vim ~/.bashrc然后加入下面的语句(将conda的安装环境加入路径)export PATH=/home/xx原创 2021-11-17 20:57:50 · 1872 阅读 · 0 评论 -
2021-06-20
先定一个目标,每天思考产品和产业互联网,积累技术和知识。原创 2021-06-20 00:01:42 · 105 阅读 · 1 评论