跳表(skiplist)在redis/levelDB中属于核心数据结构,我简单粗暴的用Golang实现了下。
就我的简单理解来说,就一个普通的链表,在insert时,通过Random_level(),把一层变成很多层,
越上数据越小,跨度越大。 查找时从上往下找,用空间换时间。
记下测试代码:
package main
import (
"fmt"
//"github.co...
分类:
编程语言 时间:
2015-01-28 01:02:44
阅读次数:
285
本人是搞移动客户端开发的,业余时间接触到golang这么个可爱的囊地鼠,于是就写了这么个测试项目:简易版的聊天系统,功能包括注册,登陆,群聊和单聊,无需使用mysql,数据都存在了文本里。本人纯粹兴趣,前后就几天搞出来的产物,想到哪里写到哪里,边查手册边写出来的,所以某些地方会有不合理的地方,但测试...
分类:
其他好文 时间:
2015-01-27 20:16:47
阅读次数:
252
鉴于Go还很年轻,下面贴几个学习相关链接。
Go官方网站: http://golang.org
目前看来,介绍相当齐全的文档:https://github.com/wonderfo/wonderfogo/wiki
Go中文邮件组:http://groups.google.com/group/golang-china
...
分类:
编程语言 时间:
2015-01-27 18:30:57
阅读次数:
137
Golang学习笔记,便于自己后续查看。
变量
变量是几乎所有编程语言中最基本的组成元素。从根本上说,变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间。
Go语言中的变量使用方式与C语言接近,但具备更大的灵活性。
变量声明
Go语言的变量声明方式与C和C++语言有明显的不同。对于纯粹的变量声明,G...
分类:
其他好文 时间:
2015-01-27 18:26:18
阅读次数:
182
这里简单记录学习Golang之旅,方便自己回顾。
package
main
import
"fmt"// 我们需要使用fmt包中的Println()函数
func
main() {
fmt.Println("Hello, world!")
}
每个Go源代码文件的开头都是一个package声明,表示该Go代码所属的包。包是Go...
分类:
其他好文 时间:
2015-01-27 16:28:47
阅读次数:
158
让我们假设你有一golang 程序,想改善其性能。有几种工具可以帮我们完成这个任务。这些工具可以帮我们识别程序中的热点(cpu,io,memory), 热点即是那些需要我们集中精力于其上,能显著改善改善性能的地方。然而,另...
分类:
其他好文 时间:
2015-01-26 21:13:38
阅读次数:
374
//type:interface value:sturctfunc PrintStruct(t reflect.Type, v reflect.Value, pc int) { fmt.Println("") for i := 0; i < t.NumField(); i++ { ...
分类:
其他好文 时间:
2015-01-24 18:34:27
阅读次数:
436
golang中,struct的method的形式如下:
func (r ReceiverType) funcName(parameters) (results)
如果想要修改struct的成员的值,method被定义时候其ReceiverType必须是struct*形式。如果ReceiverType是struct,则无法改变struct成员的值。
废话少说,代码验证:...
分类:
其他好文 时间:
2015-01-23 16:27:31
阅读次数:
223
网上很多版本发送邮件都是用; 号,关键在于,多个邮件分割不能用; 号,需要用,号// send mailfunc SendMail(subject string, message string, from *mail.Address, to []string, smtpConfig SmtpConf...
分类:
其他好文 时间:
2015-01-22 17:54:57
阅读次数:
252
strings.go包实现了一个Rabin-Karp算法.有点意思.
关于这个算法:
图灵社区的有一篇: 图说Rabin-Karp字符串查找算法
关于Go源码实现:
网友GoLove已写一个篇非常详细的说明了. http://www.cnblogs.com/golove/p/3234673.html
GoLove那个已经分析的非常清楚了,只是前面那一串说明太长了.我...
分类:
编程语言 时间:
2015-01-22 13:18:40
阅读次数:
223