最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Go?語(yǔ)言sort?中的sortInts?方法

 更新時(shí)間:2022年04月24日 10:36:29   作者:宇宙之一粟  
這篇文章主要介紹了Go?語(yǔ)言sort?中的sortInts?方法,Go?的?sort?包實(shí)現(xiàn)了內(nèi)置和用戶定義類型的排序。我們將首先查看內(nèi)置函數(shù)的排序,西瓦嗯更多相關(guān)資料需要的小伙伴可以參考一下

前言:

排序算法一直是很經(jīng)常使用的功能。Go 語(yǔ)言標(biāo)準(zhǔn)庫(kù)為我們提供了方便快捷的 ??sort?? 包 ,這個(gè)包實(shí)現(xiàn)了四種基本排序算法:插入排序、歸并排序、堆排序和快速排序。

一、從有序數(shù)據(jù)中查找值

我們知道,常見(jiàn)查找算法有順序查找和二分查找。而二分查找就是基于有序數(shù)據(jù)的查找方法。而 Go 語(yǔ)言中的 ??sort?? 包就提供了以下幾種查找的方法:

  • SearchInts(slice ,val)
  • SearchFloats(slice, val)
  • SearchStrings(slice, val)
  • Searh(count, testFunc)

二、SearchInts

??SearchInts()?? 函數(shù)是 sort 包的內(nèi)置函數(shù),用于在排序的整數(shù)切片中搜索給定元素 ??x??,并返回 ??Search()?? 指定的索引。

它接受兩個(gè)參數(shù)(??a []int, x int??):

  • a 是 int 類型的排序切片,
  • x 是要搜索的 int 類型元素,并返回??Search()?? 指定的索引

注意:如果 ??x?? 不存在,可能是 ??len(a)??,??SearchInts()?? 結(jié)果是插入元素 ??x?? 的索引。切片必須按升序排序。

語(yǔ)法結(jié)構(gòu)如下:

func SearchInts(a []int, x int) int

返回值: ??SearchInts()?? 函數(shù)的返回類型是 int,它返回 Search 指定的索引。

三、舉例

例子一:

package main

import (
"fmt"
"sort"
)

func main() {

ints := []int{2025, 2019, 2012, 2002, 2022}

sortInts := make([]int, len(ints))

copy(sortInts, ints)

sort.Ints(sortInts)

fmt.Println("Ints: ", ints)
fmt.Println("Ints Sorted: ", sortInts)

indexOf2022 := sort.SearchInts(sortInts, 2022)
fmt.Println("Index of 2022: ", indexOf2022)
}

運(yùn)行該代碼:

$ go run main.go
Ints: [2025 2019 2012 2002 2022]
Ints Sorted: [2002 2012 2019 2022 2025]
Index of 2022: 3

例子二:

package main

import (
"fmt"
"sort"
)

func main() {
a := []int{10, 20, 25, 27, 30}

x := 25
i := sort.SearchInts(a, x)
fmt.Printf("Element %d found at index %d in %v\n", x, i, a)

x = 5
i = sort.SearchInts(a, x)
fmt.Printf("Element %d not found, it can inserted at index %d in %v\n", x, i, a)

x = 40
i = sort.SearchInts(a, x)
fmt.Printf("Element %d not found, it can inserted at index %d in %v\n", x, i, a)
}

運(yùn)行結(jié)果:

Element 25 found at index 2 in [10 20 25 27 30]
Element 5 not found, it can inserted at index 0 in [10 20 25 27 30]
Element 40 not found, it can inserted at index 5 in [10 20 25 27 30]

到此這篇關(guān)于Go 語(yǔ)言sort 中的sortInts 方法的文章就介紹到這了,更多相關(guān)sortInts 方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Goland 關(guān)閉自動(dòng)移除未使用的包操作

    Goland 關(guān)閉自動(dòng)移除未使用的包操作

    這篇文章主要介紹了Goland 關(guān)閉自動(dòng)移除未使用的包操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • Go語(yǔ)言單線程運(yùn)行也會(huì)有的并發(fā)問(wèn)題解析

    Go語(yǔ)言單線程運(yùn)行也會(huì)有的并發(fā)問(wèn)題解析

    這篇文章主要為大家介紹了Go語(yǔ)言單線程運(yùn)行的并發(fā)問(wèn)題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • 一文帶你深入了解Go語(yǔ)言中切片的奧秘

    一文帶你深入了解Go語(yǔ)言中切片的奧秘

    切片是數(shù)組的一個(gè)引用,因此切片是引用類型。但自身是結(jié)構(gòu)體,值拷貝傳遞。本文將通過(guò)示例帶大家一起探索一下Go語(yǔ)言中切片的奧秘,感興趣的可以了解一下
    2022-11-11
  • go基礎(chǔ)語(yǔ)法50問(wèn)及方法詳解

    go基礎(chǔ)語(yǔ)法50問(wèn)及方法詳解

    這篇文章主要為大家介紹了go基礎(chǔ)語(yǔ)法50問(wèn)及方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • Golang?strings包常用字符串操作函數(shù)

    Golang?strings包常用字符串操作函數(shù)

    Golang?中的字符串統(tǒng)一使用?UTF-8?(屬于Unicode編碼的一種實(shí)現(xiàn)方式)進(jìn)行編碼,本篇文章將結(jié)合具體實(shí)例對(duì)常用的字符串操作函數(shù)進(jìn)行介紹,感興趣的可以了解一下
    2021-12-12
  • Golang 操作TSV文件的實(shí)戰(zhàn)示例

    Golang 操作TSV文件的實(shí)戰(zhàn)示例

    本文主要介紹了Golang 操作TSV文件的實(shí)戰(zhàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Golang新提案:panic?能不能加個(gè)?PanicError?

    Golang新提案:panic?能不能加個(gè)?PanicError?

    這篇文章主要為大家介紹了Golang的新提案關(guān)于panic能不能加個(gè)PanicError的問(wèn)題分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Go語(yǔ)言指針使用分析與講解

    Go語(yǔ)言指針使用分析與講解

    這篇文章主要介紹了Go語(yǔ)言指針使用分析與講解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Go語(yǔ)言Zap日志庫(kù)使用教程

    Go語(yǔ)言Zap日志庫(kù)使用教程

    在項(xiàng)目開發(fā)中,經(jīng)常需要把程序運(yùn)行過(guò)程中各種信息記錄下來(lái),有了詳細(xì)的日志有助于問(wèn)題排查和功能優(yōu)化;但如何選擇和使用性能好功能強(qiáng)大的日志庫(kù),這個(gè)就需要我們從多角度考慮
    2023-02-02
  • 詳解Go語(yǔ)言中接口應(yīng)用模式或慣例介紹

    詳解Go語(yǔ)言中接口應(yīng)用模式或慣例介紹

    這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言中接口應(yīng)用模式或慣例介紹的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11

最新評(píng)論

洪洞县| 枞阳县| 永泰县| 苍梧县| 金华市| 莱州市| 惠水县| 定日县| 锦屏县| 元阳县| 贵港市| 兴宁市| 临颍县| 田东县| 盈江县| 翁源县| 紫金县| 射阳县| 南皮县| 淳化县| 永春县| 龙泉市| 四子王旗| 泰州市| 三都| 渭源县| 曲阜市| 朔州市| 长兴县| 永济市| 南漳县| 曲周县| 班戈县| 诏安县| 龙海市| 富锦市| 武穴市| 柳江县| 额济纳旗| 高碑店市| 峨眉山市|