初心者から熟練者まで: Go 言語で一般的に使用されるデータ構造のコード実装

PHPz
リリース: 2024-03-04 15:09:04
オリジナル
396 人が閲覧しました

初心者から熟練者まで: Go 言語で一般的に使用されるデータ構造のコード実装

タイトル: 初心者から熟練者まで: Go 言語で一般的に使用されるデータ構造のコード実装

データ構造はプログラミングにおいて重要な役割を果たし、それはプログラムの基礎ですデザインの。 Go 言語には、一般的に使用されるデータ構造が多数あり、これらのデータ構造の実装をマスターすることは、優れたプログラマーになるために重要です。この記事では、Go 言語で一般的に使用されるデータ構造を紹介し、読者がこれらのデータ構造を使い始めて習熟するのに役立つ、対応するコード例を示します。

1. 配列

配列は基本的なデータ構造であり、同じ型の要素のセットです。 Go言語では配列の長さは固定です。以下は、単純な整数配列の宣言と使用の例です:

package main

import "fmt"

func main() {
    var arr [5]int
    arr[0] = 1
    arr[1] = 2
    arr[2] = 3
    arr[3] = 4
    arr[4] = 5

    fmt.Println(arr) // 打印数组

    // 遍历数组
    for i := 0; i < len(arr); i++ {
        fmt.Printf("%d ", arr[i])
    }
}
ログイン後にコピー

2. Slice

Slice は、長さを動的に増減できる配列ベースのデータ構造です。以下は、単純な整数スライスの宣言と使用の例です:

package main

import "fmt"

func main() {
    var slice []int
    slice = append(slice, 1)
    slice = append(slice, 2, 3, 4, 5)

    fmt.Println(slice) // 打印切片

    // 遍历切片
    for _, value := range slice {
        fmt.Printf("%d ", value)
    }
}
ログイン後にコピー

3. キュー (キュー)

キューは先入れ先出し (FIFO) データです。構造。以下は整数キューの簡単な実装例です:

package main

import "fmt"

type Queue struct {
    items []int
}

func (q *Queue) Enqueue(item int) {
    q.items = append(q.items, item)
}

func (q *Queue) Dequeue() int {
    if len(q.items) == 0 {
        return -1
    }
    item := q.items[0]
    q.items = q.items[1:]
    return item
}

func main() {
    queue := Queue{}

    queue.Enqueue(1)
    queue.Enqueue(2)
    queue.Enqueue(3)

    fmt.Println(queue.Dequeue()) // 输出1
    fmt.Println(queue.Dequeue()) // 输出2
}
ログイン後にコピー

4. スタック

スタックは後入れ先出し (LIFO) データ構造です。以下は、整数スタックの簡単な実装例です:

package main

import "fmt"

type Stack struct {
    items []int
}

func (s *Stack) Push(item int) {
    s.items = append(s.items, item)
}

func (s *Stack) Pop() int {
    if len(s.items) == 0 {
        return -1
    }
    item := s.items[len(s.items)-1]
    s.items = s.items[:len(s.items)-1]
    return item
}

func main() {
    stack := Stack{}

    stack.Push(1)
    stack.Push(2)
    stack.Push(3)

    fmt.Println(stack.Pop()) // 输出3
    fmt.Println(stack.Pop()) // 输出2
}
ログイン後にコピー

上記のサンプル コードを学習することで、読者は Go 言語で一般的に使用されるデータ構造の実装を入門から習熟まで徐々にマスターし、スキルを向上させることができます。プログラミングスキル。この記事がお役に立てば幸いです!

以上が初心者から熟練者まで: Go 言語で一般的に使用されるデータ構造のコード実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート