本文整理汇总了Golang中container/vector.IntVector类的典型用法代码示例。如果您正苦于以下问题:Golang IntVector类的具体用法?Golang IntVector怎么用?Golang IntVector使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了IntVector类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: GetPartageurs
// renvoie la liste des trolls avec qui le troll passé a un partage actif
func (store *MysqlStore) GetPartageurs(db *mysql.Client, trollId int) ([]int, os.Error) {
st := strconv.Itoa(trollId)
sql := "select troll_a, troll_b from partage where (troll_a=" + st + " or troll_b=" + st + ") and statut_a='on' and statut_b='on'"
err := db.Query(sql)
if err != nil {
return nil, err
}
result, err := db.UseResult()
if err != nil {
return nil, err
}
defer result.Free()
amis := new(vector.IntVector)
for {
row := result.FetchRow()
if row == nil {
break
}
r0 := fieldAsInt(row[0])
r1 := fieldAsInt(row[1])
if r0 == trollId {
amis.Push(r1)
} else {
amis.Push(r0)
}
}
return *amis, nil
}
开发者ID:Chouia,项目名称:Chrall,代码行数:32,代码来源:partagestore.go
示例2: main
func main() {
min := 113
max := int(^uint32(0) >> 1)
for currentSum := min; currentSum <= max; currentSum++ {
var a Sum
var initVector vector.IntVector
for i := 0; i < currentSum; i += 1 {
initVector.Push(1)
}
a.Init(initVector)
count := recursiveMerging(a, currentSum, 0)
fmt.Println(currentSum, count)
if count%1000000 == 0 {
panic("")
}
}
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:25,代码来源:78.go
示例3: PrintSorted
func (d *debugHistogram) PrintSorted() {
if !printDebugOutput {
return
}
if len(d.mapping) == 0 {
return
}
var scores vector.IntVector
inverseMapping := make(map[int]string)
sum := 0
for key, value := range d.mapping {
inverseMapping[value] = key
scores.Push(value)
sum += value
}
scoresArray := sort.IntArray(scores)
scoresArray.Sort()
fmt.Fprintf(os.Stderr, "Debug histogram - sorted:\n")
length := len(scoresArray)
for i := 0; i < length; i++ {
current := scoresArray[length-i-1]
fmt.Fprintf(os.Stderr, "%s: %d (%2.1f%%)\n", inverseMapping[current], current, float(current)/float(sum)*100)
}
}
开发者ID:Sh4pe,项目名称:komoku,代码行数:25,代码来源:debug.go
示例4: Init
func (this *Sum) Init(newElements vector.IntVector) {
this.elements = newElements.Copy()
this.accumulated = 0
for _, v := range this.elements {
this.accumulated += v
}
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:8,代码来源:76.go
示例5: removeZeros
func removeZeros(c []int) []int {
var ret vector.IntVector
for _, v := range c {
if v != 0 {
ret.Push(v)
}
}
return ret
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:9,代码来源:106.go
示例6: dead
func (t *GoTracker) dead() []int {
dead := new(vector.IntVector)
cp := t.Copy().(*GoTracker)
color := BLACK
move := 0
for {
vertex := cp.weights.Rand(color)
cp.Play(color, vertex)
move++
if move > 3*t.sqsize || cp.Winner() != EMPTY {
break
}
color = Reverse(color)
}
for i := 0; i < t.sqsize; i++ {
if t.board[i] != EMPTY && cp.board[i] != t.board[i] {
dead.Push(i)
}
}
stones := make([]int, dead.Len())
for i := 0; i < dead.Len(); i++ {
stones[i] = dead.At(i)
}
return stones
}
开发者ID:etherealmachine,项目名称:hivemind,代码行数:25,代码来源:gotracker.go
示例7: BenchmarkIntVector
func BenchmarkIntVector(b *testing.B) {
for i := 0; i < b.N; i++ {
var vec vector.IntVector
for j := 0; j < vectorLength; j++ {
vec.Push(j)
}
for j := 0; j < vectorLength; j++ {
val := vec.At(j)
val++
}
}
}
开发者ID:Sh4pe,项目名称:komoku,代码行数:12,代码来源:design_decision_benchmark.go
示例8: generatePrimes
func generatePrimes(min int, max int) vector.IntVector {
var ret vector.IntVector
for n := min; n <= max; n++ {
if isPrime(n) {
ret.Push(n)
}
}
return ret
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:12,代码来源:69.go
示例9: Rollup
func (self *YesOrNo) Rollup(time int64, key string, samples *vector.IntVector) {
data := &YesOrNoItem{}
samples.Do(func(elem interface{}) {
value := elem.(int)
if value > 0 {
data.ok++
} else {
data.fail++
}
})
self.save(time, key, data)
}
开发者ID:COTOHA,项目名称:gorrdpd,代码行数:12,代码来源:writers.go
示例10: SearchPrefix
func (connection *Connection) SearchPrefix(query string) (*vector.IntVector, os.Error) {
var count _C_int
resp := C.tcidbsearch(connection.Dystopia, C.CString(query), C.x_prefix(), &count)
fmt.Printf("searched for %v, num results = %d, resp = %v\n", query, count, resp)
var result vector.IntVector
for i := 0; i < int(count); i++ {
result.Push(int(C.x_get_result_item(resp, _C_int(i))))
}
// return &result, nil;
return &result, nil
}
开发者ID:patrickxb,项目名称:godystopia,代码行数:13,代码来源:dystopia.go
示例11: AreTwoIntVectorEquals
func AreTwoIntVectorEquals(vector1, vector2 *vector.IntVector) bool {
if vector1.Len() != vector2.Len() {
return false
}
for i := 0; i < vector1.Len(); i++ {
if vector1.At(i) != vector2.At(i) {
return false
}
}
return true
}
开发者ID:andrewsmedina,项目名称:euler,代码行数:13,代码来源:12_test.go
示例12: find
// find all occurrences of s in source; report at most n occurences
func find(src, s string, n int) []int {
var res vector.IntVector
if s != "" && n != 0 {
// find at most n occurrences of s in src
for i := -1; n < 0 || len(res) < n; {
j := strings.Index(src[i+1:], s)
if j < 0 {
break
}
i += j + 1
res.Push(i)
}
}
return res
}
开发者ID:IntegerCompany,项目名称:linaro-android-gcc,代码行数:16,代码来源:suffixarray_test.go
示例13: readLexeme
func readLexeme(state *LexerState,
rune int,
size int,
err os.Error,
predicate func(rune int) bool,
reader *bufio.Reader) (string, os.Error) {
var runes vector.IntVector
for predicate(rune) && size > 0 && err == nil {
runes.Push(rune)
rune, size, err = readRune(state, reader)
}
if err != os.EOF {
unreadRune(state, reader, rune)
}
return lexeme(runes), err
}
开发者ID:klutometis,项目名称:dragonbook,代码行数:16,代码来源:lexer.go
示例14: checkValues
func checkValues(trie *Trie, s string, v *vector.IntVector, t *testing.T) {
value, ok := trie.GetValue(s)
values := value.(*vector.IntVector)
if !ok {
t.Fatalf("No value returned for string '%s'", s)
}
if values.Len() != v.Len() {
t.Fatalf("Length mismatch: Values for '%s' should be %v, but got %v", s, *v, *values)
}
for i := 0; i < values.Len(); i++ {
if values.At(i) != v.At(i) {
t.Fatalf("Content mismatch: Values for '%s' should be %v, but got %v", s, *v, *values)
}
}
}
开发者ID:AlanQuatermain,项目名称:go-trie,代码行数:16,代码来源:trie_test.go
示例15: generatePrimes
func generatePrimes(min int, max int) []int {
var primes vector.IntVector
for n := min; n <= max; n++ {
if isPrime(n) {
primes.Push(n)
}
}
ret := make([]int, len(primes))
for k, v := range primes {
ret[k] = v
}
return ret
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:17,代码来源:88-2.go
示例16: AddPatternString
// Specialized function for TeX-style hyphenation patterns. Accepts strings of the form '.hy2p'.
// The value it stores is of type vector.IntVector
func (p *Trie) AddPatternString(s string) {
v := new(vector.IntVector)
// precompute the Unicode rune for the character '0'
rune0, _ := utf8.DecodeRune([]byte{'0'})
strLen := len(s)
// Using the range keyword will give us each Unicode rune.
for pos, rune := range s {
if unicode.IsDigit(rune) {
if pos == 0 {
// This is a prefix number
v.Push(rune - rune0)
}
// this is a number referring to the previous character, and has
// already been handled
continue
}
if pos < strLen-1 {
// look ahead to see if it's followed by a number
next := int(s[pos+1])
if unicode.IsDigit(next) {
// next char is the hyphenation value for this char
v.Push(next - rune0)
} else {
// hyphenation for this char is an implied zero
v.Push(0)
}
} else {
// last character gets an implied zero
v.Push(0)
}
}
pure := strings.Map(func(rune int) int {
if unicode.IsDigit(rune) {
return -1
}
return rune
},
s)
leaf := p.addRunes(strings.NewReader(pure))
if leaf == nil {
return
}
leaf.value = v
}
开发者ID:AlanQuatermain,项目名称:go-trie,代码行数:53,代码来源:hyphen_trie.go
示例17: main
func main() {
var a Sum
var initVector vector.IntVector
for i := 0; i < 100; i += 1 {
initVector.Push(1)
}
a.Init(initVector)
var count uint64 = 0
recursiveMerging(a, 100, 0, &count)
fmt.Println(count - 1)
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:17,代码来源:76-2.go
示例18: ReadGridFromString
func ReadGridFromString(input string) *vector.Vector {
grid := new(vector.Vector)
lines := strings.Split(input, "\n")
for _, line := range lines {
lineVector := new(vector.IntVector)
numbers := strings.Split(line, " ")
for _, number := range numbers {
number, _ := strconv.Atoi(number)
lineVector.Push(number)
}
grid.Push(lineVector)
}
return grid
}
开发者ID:andrewsmedina,项目名称:euler,代码行数:18,代码来源:11.go
示例19: continuedFraction
func continuedFraction(a float64, dSquaredFloorTimesTwo int) vector.IntVector {
aFloor := int(math.Floor(a))
var ret vector.IntVector
if dSquaredFloorTimesTwo == aFloor {
return ret
}
ret.Push(aFloor)
nextRet := continuedFraction(1/(a-float64(aFloor)), dSquaredFloorTimesTwo)
ret.AppendVector(&nextRet)
return ret
}
开发者ID:hydroo,项目名称:coding-and-math-exercises,代码行数:18,代码来源:66_2.go
示例20: TestGridProductOfTheMainDiagonal
func TestGridProductOfTheMainDiagonal(t *testing.T) {
grid := new(vector.Vector)
for i := 0; i < 5; i++ {
line := new(vector.IntVector)
for j := 0; j < 5; j++ {
if i == j {
line.Push(10)
} else {
line.Push(1)
}
}
grid.Push(line)
}
AssertGridProduct(t, grid, 10000)
}
开发者ID:andrewsmedina,项目名称:euler,代码行数:18,代码来源:11_test.go
注:本文中的container/vector.IntVector类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论