集合:由乙個或多個確定的元素所構成的整體。
集合的特性:
集合裡的元素型別不一定相同。
集合裡的元素沒有順序。
列表:一種資料項構成的有限序列,即按照一定的線性順序,排列而成的資料項的集合。
特性:有序且長度可變。
常見表現形式:資料和鍊錶
特殊型別:棧和佇列
區分列表和資料:索引
陣列使用索引的數字來標識每項資料在陣列中的位置,從0算起。
列表沒有索引。
陣列中的元素在記憶體中連續儲存,且每個元素占用相同大小的記憶體。
陣列的4種操作:
讀取元素
查詢元素
插入元素
刪除元素
給定乙個整數型別的陣列 nums,請編寫乙個能夠返回陣列 「中心索引」 的方法。
陣列 中心索引 :陣列中心索引的左側所有元素相加的和等於右側所有元素相加的和。
如果陣列不存在中心索引,返回 -1。如果陣列有多個中心索引,那麼返回最靠近左邊的那乙個。
示例:
輸入:
nums = [1, 7, 3, 6, 5, 6]
輸出:3
解釋:索引 3 (nums[3] = 6) 的左側數之和 (1 + 7 + 3 = 11),與右側數之和 (5 + 6 = 11) 相等。
同時, 3 也是第乙個符合要求的中心索引。
go語言實現:
func pivotindex
(nums [
]int) int
for i :=0
;i<
len(nums)
;i++
else
sumright = sum-sumleft-nums[i]
if(sumleft == sumright)
}return-1
}
給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。
假設陣列中無重複元素。
示例 1:
輸入: [1,3,5,6], 5
輸出: 2
示例 2:
輸入: [1,3,5,6], 2
輸出: 1
go實現:
func searchinsert
(nums [
]int, target int) int
}return
len(nums)
}
給出乙個區間的集合,請合併所有重疊的區間。
示例 1:
輸入: [[1,3],[2,6],[8,10],[15,18]]
輸出: [[1,6],[8,10],[15,18]]
解釋: 區間 [1,3] 和 [2,6] 重疊, 將它們合併為 [1,6].
示例 2:
輸入: [[1,4],[4,5]]
輸出: [[1,5]]
解釋: 區間 [1,4] 和 [4,5] 可被視為重疊區間。
LoadRunner C語言 實現字串陣列比較
c語言裡字串比較沒有現成的方法,沒搜到合身的,只得寫乙個了,記之 define ecnt 3 預期長度 define icnt 5 實際長度 或上限 define length 6 字串最大長度 main 預期找到的資料 charistr icnt length 實際找到的資料 comparestr...
LoadRunner C語言 實現字串陣列比較
c語言裡字串比較沒有現成的方法,沒搜到合身的,只得寫乙個了,記之 define ecnt 3 預期長度 define icnt 5 實際長度 或上限 define length 6 字串最大長度 main 預期找到的資料 charistr icnt length 實際找到的資料 comparestr...
Go語言實現 劍指offer 左旋轉字串
該題目 於牛客網 劍指offer 專題。組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc go語言實現...