欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

golang實現(xiàn)數(shù)組分割的示例代碼

 更新時間:2021年12月26日 11:27:23   作者:_little_stone  
本文主要介紹了golang實現(xiàn)數(shù)組分割的示例代碼,要求把數(shù)組分割成多個正整數(shù)大小的數(shù)組,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

需求:給定一個數(shù)組和一個正整數(shù),要求把數(shù)組分割成多個正整數(shù)大小的數(shù)組,如果不夠分,則最后一個數(shù)組分到剩余的所有元素。

示例1:

數(shù)組:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],正整數(shù):2
期望結(jié)果: [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]

示例2:

數(shù)組:[1, 2, 3, 4, 5, 6, 7, 8, 9],正整數(shù):2
期望結(jié)果: [[1, 2], [3, 4], [5, 6], [7, 8], [9]]

下面是我的實現(xiàn)代碼:

//分割數(shù)組,根據(jù)傳入的數(shù)組和分割大小,將數(shù)組分割為大小等于指定大小的多個數(shù)組,如果不夠分,則最后一個數(shù)組元素小于其他數(shù)組
func splitArray(arr []int, num int64) [][]int {
 max := int64(len(arr))
 //判斷數(shù)組大小是否小于等于指定分割大小的值,是則把原數(shù)組放入二維數(shù)組返回
 if max <= num {
  return [][]int{arr}
 }
 //獲取應(yīng)該數(shù)組分割為多少份
 var quantity int64
 if max%num == 0 {
  quantity = max / num
 } else {
  quantity = (max / num) + 1
 }
 //聲明分割好的二維數(shù)組
 var segments = make([][]int, 0)
 //聲明分割數(shù)組的截止下標(biāo)
 var start, end, i int64
 for i = 1; i <= quantity; i++ {
  end = i*num
  if i != quantity {
   segments = append(segments, arr[start:end])
  } else {
   segments = append(segments, arr[start:])
  }
  start = i*num
 }
 return segments
}

附:這個是我在實際業(yè)務(wù)需求中遇到的問題,不知道大家有沒有更好寫法

到此這篇關(guān)于golang實現(xiàn)數(shù)組分割的示例代碼的文章就介紹到這了,更多相關(guān)golang數(shù)組分割 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Go 語言 IDE 中的 VSCode 配置使用教程

    Go 語言 IDE 中的 VSCode 配置使用教程

    Gogland 是 JetBrains 公司推出的Go語言集成開發(fā)環(huán)境。這篇文章主要介紹了Go 語言 IDE 中的 VSCode 配置使用教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • golang監(jiān)聽ip數(shù)據(jù)包的實現(xiàn)步驟(golang純享版)

    golang監(jiān)聽ip數(shù)據(jù)包的實現(xiàn)步驟(golang純享版)

    這篇文章主要給大家介紹了golang監(jiān)聽ip數(shù)據(jù)包的實現(xiàn)步驟,本文以ip4 作為案例進(jìn)行包抓取示范,ip6抓取與ip4方式異曲同工,可自行舉一反三得出,文中通過圖文結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-02-02
  • Go語言中關(guān)于set的實現(xiàn)思考分析

    Go語言中關(guān)于set的實現(xiàn)思考分析

    Go?開發(fā)過程中有時我們需要集合(set)這種容器,但?Go?本身未內(nèi)置這種數(shù)據(jù)容器,故常常我們需要自己實現(xiàn),下面我們就來看看具體有哪些實現(xiàn)方法吧
    2024-01-01
  • 淺析Golang中rune類型的使用

    淺析Golang中rune類型的使用

    從golang源碼中看出,rune關(guān)鍵字是int32的別名(-231~231-1),對比byte(-128~127),可表示的字符更多,本文就來簡單聊聊它的使用方法吧,希望對大家有所幫助
    2023-05-05
  • CentOS7使用yum安裝Golang的超詳細(xì)步驟

    CentOS7使用yum安裝Golang的超詳細(xì)步驟

    CentOS默認(rèn)并沒有安裝golang運行環(huán)境,下面這篇文章主要給大家介紹了關(guān)于CentOS7使用yum安裝Golang的超詳細(xì)步驟,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • go開源Hugo站點構(gòu)建三步曲之集結(jié)渲染

    go開源Hugo站點構(gòu)建三步曲之集結(jié)渲染

    這篇文章主要為大家介紹了go開源Hugo站點構(gòu)建三步曲之集結(jié)渲染詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • 構(gòu)建Golang應(yīng)用最小Docker鏡像的實現(xiàn)

    構(gòu)建Golang應(yīng)用最小Docker鏡像的實現(xiàn)

    這篇文章主要介紹了構(gòu)建Golang應(yīng)用最小Docker鏡像的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • golang time包的用法詳解

    golang time包的用法詳解

    這篇文章主要介紹了golang time包的用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 深入了解Go的interface{}底層原理實現(xiàn)

    深入了解Go的interface{}底層原理實現(xiàn)

    本文主要介紹了Go的interface{}底層原理實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • golang?gorm學(xué)習(xí)之如何指定數(shù)據(jù)表

    golang?gorm學(xué)習(xí)之如何指定數(shù)據(jù)表

    在sql中首先要指定是從哪張表中查詢,所以這篇文章小編就來帶大家一起看一下gorm是如何根據(jù)model來自動解析表名的,感興趣的小伙伴可以了解下
    2023-08-08

最新評論