Go語(yǔ)言實(shí)現(xiàn)順序存儲(chǔ)的線性表實(shí)例
本文實(shí)例講述了Go語(yǔ)言實(shí)現(xiàn)順序存儲(chǔ)的線性表的方法。分享給大家供大家參考。具體如下:
代碼如下:
// 順序存儲(chǔ)線性表
////////
package main
import "fmt"
const MAXSIZE = 20 //定義數(shù)組長(zhǎng)度
//定義線性表結(jié)構(gòu)
type List struct {
Element [MAXSIZE]int //存儲(chǔ)線性表元素的數(shù)組
length int //線性表長(zhǎng)度
}
//初始化線性表,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
//初始化一個(gè)線性表
for i < 15 {
l.InitList(b, i)
i++
b++
}
//插入一個(gè)元素
l.Insert(1, 13)
//刪除一個(gè)元素
l.Delete(5)
fmt.Println(l)
}
希望本文所述對(duì)大家的Go語(yǔ)言程序設(shè)計(jì)有所幫助。
相關(guān)文章
用Go語(yǔ)言標(biāo)準(zhǔn)庫(kù)實(shí)現(xiàn)Web服務(wù)之項(xiàng)目介紹
從本節(jié)開(kāi)始將從后端到前端一步一步實(shí)現(xiàn)一個(gè)Go語(yǔ)言Web服務(wù),后端除了MySQL驅(qū)動(dòng),全部使用Go語(yǔ)言標(biāo)準(zhǔn)庫(kù)來(lái)實(shí)現(xiàn)一個(gè)小型項(xiàng)目,本篇將簡(jiǎn)單的介紹一下項(xiàng)目開(kāi)發(fā)要準(zhǔn)備的流程,感興趣的同學(xué)可以閱讀一下2023-05-05聊聊go xorm生成mysql的結(jié)構(gòu)體問(wèn)題
這篇文章主要介紹了go xorm生成mysql的結(jié)構(gòu)體問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2022-03-03Golang?HTTP服務(wù)超時(shí)控制實(shí)現(xiàn)原理分析
這篇文章主要介紹了Golang?HTTP服務(wù)超時(shí)控制實(shí)現(xiàn)原理,HTTP服務(wù)的超時(shí)控制是保障服務(wù)高可用性的重要措施之一,由于HTTP服務(wù)可能會(huì)遇到網(wǎng)絡(luò)延遲,資源瓶頸等問(wèn)題,因此需要對(duì)請(qǐng)求進(jìn)行超時(shí)控制,以避免服務(wù)雪崩等問(wèn)題,需要的朋友可以參考下2023-05-05go語(yǔ)言實(shí)現(xiàn)接口查詢(xún)
這篇文章主要介紹了go語(yǔ)言實(shí)現(xiàn)接口查詢(xún),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-12-123個(gè)Go語(yǔ)言中實(shí)用重構(gòu)技術(shù)分享
代碼重構(gòu)是在不改變外部功能的情況下對(duì)現(xiàn)有代碼進(jìn)行改進(jìn),是編程的核心部分之一,本文為大家介紹了Go語(yǔ)言中3個(gè)實(shí)用重構(gòu)技術(shù),需要的可以參考一下2023-06-06go語(yǔ)言goto語(yǔ)句跳轉(zhuǎn)到指定的標(biāo)簽實(shí)現(xiàn)方法
這篇文章主要介紹了go語(yǔ)言goto語(yǔ)句跳轉(zhuǎn)到指定的標(biāo)簽實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05