今天就跟大家聊聊有關(guān)Go語言中怎么實(shí)現(xiàn)一個(gè)順序存儲的線性表,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
為萬載等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及萬載網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、萬載網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
具體如下:
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 //初始化一個(gè)線性表 for i < 15 { l.InitList(b, i) i++ b++ } //插入一個(gè)元素 l.Insert(1, 13) //刪除一個(gè)元素 l.Delete(5) fmt.Println(l)}
看完上述內(nèi)容,你們對Go語言中怎么實(shí)現(xiàn)一個(gè)順序存儲的線性表有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。