Golang使用數序結構實現線性表的增刪查改

2021-10-05 16:52:50 字數 1858 閱讀 5310

使用順序結構實現線性表crud

package main

import

("errors"

"fmt")/*

使用順序儲存結構定義線性表

1.定義容量

2.get方法獲取指定位置的元素

3.set方法設定指定位置的元素值

3.add新增新元素

4.del刪除指定位置的元素

5.delbyvalue

6.size獲取線性表的長度

*///定義常量

const

( maxsize =

100)

//定義全域性變數

var(

linerlist [maxsize]

int=

[maxsize]

int size int=0

)//獲取線性表長度

func

size()

int//新增乙個元素到線性表中

func

add(value int)(

bool

,error

) linerlist[size]

= value

size++

return

true

,nil

}//獲取指定位置元素值

func

get(i int)(

int,

error

)return linerlist[i]

,nil

}//獲取線性表的元素列表

func

iterator()

int//刪除指定位置的元素

func

del(i int)(

bool

,error

)for n :=i; n < size; n++

size--

return

true

,nil

}//刪除指定元素

func

delbyvalue

(value int)(

bool

,error)}

for i:= position; i < size; i++

size--

return

true

,nil

}//在指定位置插入新的元素

func

set(i,value int)(

bool

,error

)for n := size; n >=i; n--

linerlist[i]

= value

size++

return

true

,nil

}func

main()

go run linerlist.

go v:[1

234]

size:4--

----

----

----

----

----

----

-------

v:[12

10134]

size:5--

----

----

----

----

----

----

-------

v:[12

34]size:4--

----

----

----

----

----

----

-------

v:[23

4]size:

3

golang 實現兩數之和

給定乙個整數陣列和乙個目標值,找出陣列中和為目標值的兩個數。你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。示例給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 7 9 所以返回 0,1 golang 實現 package main impor...

回文數的golang實現

判斷乙個整數是否是回文數。回文數是指正序 從左向右 和倒序 從右向左 讀都是一樣的整數 輸入 121 輸出 true 輸入 121 輸出 false 解釋 從左向右讀,為 121 從右向左讀,為 121 因此它不是乙個回文數。輸入 10輸出 false 解釋 從右向左讀,為 01 因此它不是乙個回文...

最大子序和的golang實現

給定乙個整數陣列 nums 找到乙個具有最大和的連續子陣列 子陣列最少包含乙個元素 返回其最大和。輸入 2,1,3,4,1,2,1,5,4 輸出 6解釋 連續子陣列 4,1,2,1 的和最大,為 6。首先理解題意 核心 取出第一位為基準值 sum nums 0 res sum 下標從1開始 for ...