![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go编程
在实践中学习和总结
cat_kunkun
这个作者很懒,什么都没留下…
展开
-
2021-03-17
go的例题 package main import ( "fmt" "sync" "sync/atomic" ) // 降级练习: 启动两个G,一个向chan中输入0-49,一个从chan中读取0-49并打印,chan是同一个 func writeData(wg *sync.WaitGroup, counter int64, intChan chan int64) { for { if counter == 50 { wg.Done() return } intCha原创 2021-03-17 17:05:27 · 85 阅读 · 0 评论 -
算法相关知识点的总结
算法相关概念 次数 通过算法得到结果运行的次数。 运行时间 大O(n)表示法,n表示次数。 常见算法的运行时间: O(n):如普通查找的线性时间 O(n^2):如选择排序低效算法 O(logn):如下二分查找log时间 O(nlogn):如快速排序nlog时间 查找算法 二分查找 说明:比较查找,即每次都取列表中间的值和要查找的值相比较,直到找到要找的那个值。 前提条件:对于有序的数组才能使用。 查找次数是logn,运行时间是O(logn)。 普通查找 说明:可以是在无序中的数组中查找,查找长度原创 2021-03-12 15:57:47 · 211 阅读 · 0 评论 -
良好的编程习惯
变量命名有一定的含义,不乱命名 简洁,见名知义// 如: 定义一个商品订单信息的结构体 // 订单信息 type orderInfo { name string // 商品名称 payTime string // 订单支付时间 createTime string // 订单创建时间 } 重复代码抽象成函数 对于需求先写构思,然后再依照构思一步步实现 ...原创 2021-03-12 15:57:06 · 65 阅读 · 0 评论 -
计算机的基础知识
二进制运算 计算机底层使用补码进行运算。 原码:二进制 1: 0000 0001 0: 0000 0000 -1: 1000 0001(第一个1表示符号位) 反码:正数不变,负数符号位不变其他位取反 1:0000 0001 0:0000 0000(0的反码为0) -1:1111 1110 补码:反码+1 1: 0000 0001 0: 0000 0000(0的补码为0) -1: 1111 1111 ...原创 2021-03-12 15:55:57 · 77 阅读 · 0 评论 -
go 易忘知识点汇总
个人参考文章 易忘知识点 defer 在函数内使用,所在函数为外围函数,调用外围函数的函数称为调用函数,当所有defer执行完,外围函数才执行完。 外围函数有return,当函数内的所有defer执行完后,return才会返回结果(此时return中的值已经是确定的了)。 func main() { a := new(int) f := func() int { *a = 1 defer func() { *a = 2 fmt.Println("defer", *a) // 2原创 2021-03-12 15:52:01 · 117 阅读 · 0 评论