V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zealic  ›  全部回复第 7 页 / 共 30 页
回复总数  593
1 ... 3  4  5  6  7  8  9  10  11  12 ... 30  
2019-06-13 09:26:07 +08:00
回复了 gramyang 创建的主题 Go 编程语言 不懂就问,关于 Go 的包管理
go mod + vendor 模式就行

```
go mod vendor
go build -mod=vendor
```

产生的 vendor 文件夹加入代码仓库即可。
2019-05-31 18:21:52 +08:00
回复了 aker1986 创建的主题 程序员 不得不说一句虚拟机真是个好东西,哈哈.
VM -> NAS -> Homelab
2019-05-26 12:47:05 +08:00
回复了 voe 创建的主题 程序员 小白求问:能否取消域名 301 重定向
原谅我差点笑出猪叫声
2019-05-23 22:31:47 +08:00
回复了 tuding 创建的主题 问与答 项目结束了,该怎么和合伙人相处?
亲兄弟都要明算账,你怎么知道他是不是把你应得的部分扣留了
2019-05-14 19:06:26 +08:00
回复了 wildnode 创建的主题 成都 月底去成都,求老司机们推荐点好吃的好玩的。
逛的时候多注意一下各类肛肠医院,可能有需要,并且不要吃他们楼下的肥肠粉
2019-05-13 09:41:12 +08:00
回复了 svtter 创建的主题 问与答 K8S 商业化解决方案提供商都有哪些?
DaoCloud,有专注几年的产品了
2019-05-07 14:24:20 +08:00
回复了 native 创建的主题 程序员 如何判定一个人技术特别牛?
同意 #10 楼,将知识内化并能应用于解决问题,不限于开发、解决 bug,规避各种坑,面对未知问题能通过蛛丝马迹深入根源来解决。
2019-04-30 17:04:33 +08:00
回复了 jianfa2003 创建的主题 程序员 是什么原因让你踏入程序猿的道路!
StarCraft & WarCraft
2019-04-18 02:33:42 +08:00
回复了 Travis 创建的主题 分享创造 做了个 zerotier 的自动镜像
奥~康么~达令~ **** **
2019-03-26 09:30:35 +08:00
回复了 littleb 创建的主题 成都 想在成都上车 LOFT,但是有几个现实问题
这个地段位置很垃圾的,IT 行业工作地点基本在南边高新区,除非你能忍受一个班小时的单程通勤,以及开车每天堵半小时+半小时路程,否则千万不要买。
上面的算

首次读取需要读取所有数据,以后增量数据就极其方便,开销几乎可以忽视
如果对于读取数据有比较高的要求,也可以 MapReduce 并行运行

完成后的也可以通过 Redis 做一二级缓存,完成后可以直接判断 ID 是否存在,以及 ID 总数
落地磁盘做三级缓存,这样以后都不用再次统计数据
详细说下我在一楼说的算法

(Bitmap + 二叉树) x 链表

空间最小化,根据已知条件,最坏的情况下内存占用为 645K,计算量也不大

算法细节为,

BitmapBinaryTree,六级,1->2-4->8->16->32
然后循环所有 ID,每个 ID 置位 Bitmap,发现重复的 ID 就创建一个新的 BitmapBinaryTree 并置位
如此循环最多创建 10000 个 BitmapBinaryTree
因为大多数 ID 不重复,大部分数据位只会存在于第一个 BitmapBinaryTree

那么最终数据结构应该叫做 BinaryTreeChain,数据结构如下

type BinaryTreeChain struct {
Left *Bitmap128
Right *Bitmap128
Next *BinaryTreeChain

// 二分查找对应的 Bitmap8 并置位,若设置成功返回,否则代表重复
// 重复需要创建或查找 Next 链并置位
SetByID(id int256) bool
//获取值
GetByID(id int256) bool
// 计算总数
CountByID(id int256) bool
}

type Bitmap128 struct {
Left *Bitmap64
Right *Bitmap64
}

type Bitmap64 struct {
Left *Bitmap32
Right *Bitmap32
}

type Bitmap32 struct {
Left *Bitmap16
Right *Bitmap16
}


type Bitmap16 struct {
Left *Bitmap8
Right *Bitmap8
}

type Bitmap8 = byte
Bitmap
@abirdcanfly 可联系详聊,邮箱就是用户名 gmail
前两个还好,第三个需求太模糊
1 ... 3  4  5  6  7  8  9  10  11  12 ... 30  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4140 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 05:17 · PVG 13:17 · LAX 22:17 · JFK 01:17
Developed with CodeLauncher
♥ Do have faith in what you're doing.