最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Go語言實(shí)現(xiàn)順序存儲的線性表實(shí)例

 更新時間:2015年03月05日 09:33:33   作者:OSC首席鍵客  
這篇文章主要介紹了Go語言實(shí)現(xiàn)順序存儲的線性表的方法,實(shí)例分析了Go語言實(shí)現(xiàn)線性表的定義、插入、刪除元素等的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實(shí)例講述了Go語言實(shí)現(xiàn)順序存儲的線性表的方法。分享給大家供大家參考。具體如下:

代碼如下:

復(fù)制代碼 代碼如下:
/////////
// 順序存儲線性表
////////
package main
import "fmt"
const MAXSIZE = 20 //定義數(shù)組長度
//定義線性表結(jié)構(gòu)
type List struct {
    Element [MAXSIZE]int //存儲線性表元素的數(shù)組
    length  int          //線性表長度
}
//初始化線性表,d:初始化的元素, l位置
func (l *List) InitList(d int, p int) {
    l.Element[p] = d
    l.length++
}
//插入元素
//d:插入的數(shù)據(jù)
//p:插入位置
func (l *List) Insert(d int, p int) bool {
    if p < 0 || p >= MAXSIZE || l.length >= MAXSIZE {
        return false
    }
    if p < l.length {
        for k := l.length - 1; k >= p; k-- {
            l.Element[k+1] = l.Element[k]
        }
        l.Element[p] = d
        l.length++
        return true
    } else {
        l.Element[l.length] = d
        l.length++
        return true
    }
}
//刪除元素
//p:刪除元素的位置
func (l *List) Delete(p int) bool {
    if p < 0 || p > l.length || p >= MAXSIZE {
        return false
    }
    for ; p < l.length-1; p++ {
        l.Element[p] = l.Element[p+1]
    }
    l.Element[l.length-1] = 0
    l.length--
    return true
}
func main() {
    var l List
    i := 0
    b := 1
    //初始化一個線性表
    for i < 15 {
        l.InitList(b, i)
        i++
        b++
    }
    //插入一個元素
    l.Insert(1, 13)
    //刪除一個元素
    l.Delete(5)
    fmt.Println(l)
}

希望本文所述對大家的Go語言程序設(shè)計有所幫助。

相關(guān)文章

  • 淺談Golang的GC垃圾回收機(jī)制

    淺談Golang的GC垃圾回收機(jī)制

    本文介紹了Go語言的垃圾回收機(jī)制,通過使用對象池、減少短生命周期對象的創(chuàng)建和優(yōu)化內(nèi)存布局等方法,可以有效地減少GC壓力,提高程序的性能,感興趣的可以了解一下
    2024-11-11
  • Golang實(shí)現(xiàn)單元測試中的邏輯層

    Golang實(shí)現(xiàn)單元測試中的邏輯層

    前面我們完成了最麻煩的數(shù)據(jù)層的單元測試,今天我們來看看單元測試中最容易做的一層,數(shù)據(jù)邏輯層,也就是我們通常說的 service 或者 biz 等
    2023-03-03
  • golang占位符%v、%+v、%#v舉例詳解

    golang占位符%v、%+v、%#v舉例詳解

    這篇文章主要給大家介紹了關(guān)于golang占位符%v、%+v、%#v的相關(guān)資料,Go語言中的占位符通常用于格式化輸出,它們以%開頭,后跟一個字符,表示要轉(zhuǎn)換的數(shù)據(jù)類型,需要的朋友可以參考下
    2024-05-05
  • go語言實(shí)現(xiàn)依賴注入的示例代碼

    go語言實(shí)現(xiàn)依賴注入的示例代碼

    依賴注入和控制反轉(zhuǎn)恰恰相反,它是一種具體的編碼技巧,我們不通過 new 的方式在類內(nèi)部創(chuàng)建依賴類的對象,而是將依賴的類對象在外部創(chuàng)建好之后,通過構(gòu)造函數(shù)、函數(shù)參數(shù)等方式傳遞給類來使用,本文將給大家介紹go語言實(shí)現(xiàn)依賴注入,需要的朋友可以參考下
    2024-01-01
  • Golang拾遺之自定義類型和方法集詳解

    Golang拾遺之自定義類型和方法集詳解

    golang拾遺主要是用來記錄一些遺忘了的、平時從沒注意過的golang相關(guān)知識。這篇文章主要整理了一下Golang如何自定義類型和方法集,需要的可以參考一下
    2023-02-02
  • go中結(jié)構(gòu)體切片的實(shí)現(xiàn)示例

    go中結(jié)構(gòu)體切片的實(shí)現(xiàn)示例

    Go語言中的結(jié)構(gòu)體切片是一種結(jié)合了結(jié)構(gòu)體和切片特點(diǎn)的數(shù)據(jù)結(jié)構(gòu),用于存儲和操作多個結(jié)構(gòu)體實(shí)例,具有一定的參考價值,感興趣的可以了解一下
    2024-11-11
  • GoLang實(shí)現(xiàn)日志收集器流程講解

    GoLang實(shí)現(xiàn)日志收集器流程講解

    這篇文章主要介紹了GoLang實(shí)現(xiàn)日志收集器流程,看日志是開發(fā)者平時排查BUG所必須的掌握的技能,但是日志冗雜,所以寫個小工具來收集這些日志幫助我們排查BUG,感興趣想要詳細(xì)了解可以參考下文
    2023-05-05
  • Go語言讀取YAML 配置文件的兩種方式分享

    Go語言讀取YAML 配置文件的兩種方式分享

    在日常開發(fā)中,YAML 格式的文件基本上被默認(rèn)為是配置文件,其內(nèi)容因?yàn)榭s進(jìn)帶來的層級感看起來非常直觀和整潔。本文分享了讀取YAML 配置文件的兩種方式,需要的可以參考一下
    2022-12-12
  • Go關(guān)鍵字defer的使用和底層實(shí)現(xiàn)

    Go關(guān)鍵字defer的使用和底層實(shí)現(xiàn)

    defer是Go語言的關(guān)鍵字,一般用于資源的釋放和異常的捕捉,defer語句后將其后面跟隨的語句進(jìn)行延遲處理,就是說在函數(shù)執(zhí)行完畢后再執(zhí)行調(diào)用,也就是return的ret指令之前,本文給大家介紹了Go關(guān)鍵字defer的使用和底層實(shí)現(xiàn),需要的朋友可以參考下
    2023-11-11
  • Golang空結(jié)構(gòu)體struct{}用途,你知道嗎

    Golang空結(jié)構(gòu)體struct{}用途,你知道嗎

    這篇文章主要介紹了Golang空結(jié)構(gòu)體struct{}用途,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01

最新評論

武汉市| 柳河县| 施秉县| 汤阴县| 青铜峡市| 江山市| 二连浩特市| 通海县| 高碑店市| 公安县| 木兰县| 天气| 祁连县| 通化县| 辰溪县| 周口市| 绵竹市| 巴东县| 石城县| 法库县| 融水| 柞水县| 丰原市| 库伦旗| 巩留县| 弥渡县| 浦江县| 翁牛特旗| 台湾省| 张家港市| 九台市| 贺州市| 循化| 康马县| 武宁县| 朝阳市| 鲁山县| 连州市| 康乐县| 龙海市| 西充县|