找到 1082 篇文章 關於 Go 程式設計

編寫一個 Golang 程式,在陣列中查詢具有給定和的配對 (O(n))

Kiran P
更新於 2021年2月4日 11:23:55

547 次檢視

示例輸入陣列 = [1, 3, 5, 7, 8, 9],和 = 11 => (3, 8)解決此問題的方法步驟 1:定義一個接受陣列和和的方法。步驟 2:定義一個對映變數,型別為 map[int]int。步驟 3:迭代給定的陣列為 i。步驟 4:如果對映 sum-arr[i] 中不存在鍵,則 mapping[arr[i]]=i。步驟 5:如果存在,則列印“找到配對”。步驟 6:最後,列印“未找到配對”。程式現場演示包 main 匯入 "fmt" 函式 findSumPair(arr []int, sum int){    mapping := make(map[int]int)    for i:=0; i

編寫一個 Golang 程式,在陣列中查詢具有給定和的配對 (O(nlogn))

Kiran P
更新於 2021年2月4日 11:23:38

215 次檢視

示例輸入陣列 = [1, 3, 5, 7, 8, 9],和 = 11 => (3, 8)解決此問題的方法步驟 1:定義一個接受陣列和和的方法。步驟 2:對給定陣列進行排序,宣告 low:=0 和 high:=size-1 變數。步驟 3:迭代 for 迴圈,直到 low sum,則 high--。步驟 5:最後,列印“未找到配對”。程式現場演示包 main 匯入 (    "fmt"    "sort" ) 函式 findSumPair(arr []int, sum int){    sort.Ints(arr)    low := 0    high := len(arr) - 1    for low

編寫一個 Golang 程式,在陣列中查詢具有給定和的配對 (O(n2))

Kiran P
更新於 2021年2月4日 11:23:24

456 次檢視

示例輸入陣列 = [4, 1, 6, 8, 7, 2, 3],和 = 11 => (4, 7) 或 (8, 3)解決此問題的方法步驟 1:定義一個接受陣列和和的方法。步驟 2:從 0 到 n 迭代為 i。步驟 3:再次,從 i+1 到 n-1 迭代 for 迴圈為 j。步驟 4:如果 arr[i] + arr[j] == sum,則返回 arr[i] 和 arr[j]。步驟 5:最後,列印配對未找到。程式現場演示包 main 匯入 (    "fmt" ) 函式 findSumPair(arr []int, sum int){    for i:=0; i

編寫一個 Golang 程式,查詢陣列中每個元素的頻率

Kiran P
更新於 2021年2月4日 11:15:26

548 次檢視

示例輸入陣列 = [1, 3, 4, 3, 2, 3, 4, 0, 2]元素13420頻率13221解決此問題的方法步驟 1:定義一個接受陣列的方法。步驟 2:定義一個對映,其中鍵將是陣列的元素,起始值為 0。步驟 3:開始迭代輸入陣列。如果對映中存在元素,則遞增計數。步驟 4:如果對映中不存在元素,則儲存在對映中並將其值設為 1。程式現場演示包 main 匯入 (    "fmt" ) 函式 findFrequencyOfArray(arr []int){    frequency := make(map[int]int)    for _, item := range arr{     ... 閱讀更多

編寫一個 Golang 程式,檢查給定陣列是否已排序(使用氣泡排序技術)

Kiran P
更新於 2021年2月4日 11:15:04

317 次檢視

示例輸入 arr = [7, 15, 21, 26, 33] => 陣列已排序。輸入 arr = [7, 5, 1, 6, 3] => 陣列未排序。解決此問題的方法步驟 1:從第 0 個索引迭代到 n-1。步驟 2:從第 0 個索引迭代到 n-1-i,其中 i 是上面迴圈的索引。步驟 3:如果在第一次迭代中沒有發生交換,則列印“陣列已排序”。步驟 4:如果發生交換,則列印“陣列未排序”。程式現場演示包 main 匯入 "fmt" 函式 checkSortedArray(arr []int){    sortedArray := true    for i:=0; i

編寫一個 Golang 程式,在已排序的陣列中搜索元素

Kiran P
更新於 2021年2月4日 11:14:46

510 次檢視

解決此問題的方法步驟 1:從第 0 個索引迭代到 n-1,其中 n 是給定陣列的大小。步驟 2:宣告 low=第 0 個索引和 high=n-1。啟動一個 for 迴圈,直到 low 小於 high。步驟 3:查詢 mid=(low+high)/2,如果中間的元素等於 key,則返回 mid 索引。步驟 4:如果 mid 處的元素大於 key,則將 high 設為 mid。步驟 5:如果 mid 處的元素小於 key,則將 low 設為 mid + 1。步驟 6:如果給定...中不存在 key 閱讀更多

編寫一個 Golang 程式,使用氣泡排序對陣列進行排序

Kiran P
更新於 2021年2月4日 11:14:29

498 次檢視

定義:氣泡排序是最簡單的排序演算法,它透過重複交換相鄰元素(如果它們處於錯誤的順序)來工作。示例輸入 arr = [7, 5, 1, 6, 3]第 1 次迭代 => swap(7, 5) => swap(7, 1) => swap(7, 6) => swap(7, 3) => [5, 1, 6, 3, 7]第 2 次迭代 => [1, 5, 3, 6, 7]第 3 次迭代 => [1, 3, 5, 6, 7]第 4 次迭代 => [1, 3, 5, 6, 7]第 5 次迭代 => [1, 3, 5, 6, 7]解決此問題的方法步驟 1:從第 0 個索引迭代到 n-1。步驟 2:從第 0 個索引迭代到 n-1-i,... 閱讀更多

編寫一個 Golang 程式,在給定範圍內查詢素數

Kiran P
更新於 2021年2月4日 11:14:14

3K+ 次檢視

示例輸入 num1=3 和 num2=8 => 素數為:3、5、7輸入 num1=8 和 num2=23 => 素數為:11、13、17、19、23解決此問題的方法步驟 1:定義一個接受兩個數字 num1 和 num2 的函式,型別為 int。步驟 2:在 num1 和 num2 之間迭代。步驟 3:如果數字是素數,則列印該數字,否則中斷。程式現場演示包 main 匯入 (    "fmt"    "math" ) 函式 printPrimeNumbers(num1, num2 int){    if num1

編寫一個 Golang 程式,查詢陣列中元素的頻率

Kiran P
更新於 2021年2月4日 11:13:59

239 次檢視

示例在輸入陣列中,arr = [2, 4, 6, 7, 8, 1, 2]2 在給定陣列中的頻率為 27 的頻率為 13 的頻率為 0。解決此問題的方法步驟 1:定義一個接受陣列和 num 的函式步驟 2:宣告一個變數 count = 0。步驟 3:迭代給定陣列,如果陣列中出現 num,則將 count 增加 1。步驟 4:列印給定 num 的 count。程式現場演示包 main 匯入 "fmt" 函式 findFrequency(arr []int, num int){    count := 0    for _, item := range arr{       if item == ... 閱讀更多

編寫一個 Golang 程式,將十進位制數轉換為其二進位制形式

Kiran P
更新於 2021年2月4日 11:10:17

2K+ 次檢視

示例輸入 decimal_num = 13 => 輸出 = 8+4+1 => 1101輸入 decimal_num = 11 => 輸出 = 8+2+1 => 1011解決此問題的方法步驟 1:定義一個接受十進位制數 decimal_num 的函式,型別為 int。步驟 2:定義一個數組來儲存將十進位制數除以 2 時的餘數。步驟 3:啟動一個 for 迴圈,直到十進位制數變為 0。步驟 4:以相反的順序列印二進位制陣列。程式現場演示包 main 匯入 (    "fmt" ) 函式 decimalToBinary(num int){    var binary []int    for num !=0 {       binary = append(binary, num%2)       ... 閱讀更多

廣告

© . All rights reserved.