494 次瀏覽
示例下一個5空解決此問題的方法步驟 1 - 定義一個接受連結串列頭的方法。步驟 2 - 如果 head == nil,建立一個新節點並返回該節點。步驟 3 - 如果 head 不為空,則遍歷到連結串列的倒數第二個。示例 即時演示包 main 匯入“fmt”型別節點結構 { 值 int 下一個 *節點 } 函式 NewNode(值 int,下一個 *節點) *節點{ var n 節點 n.value = 值 n.next = 下一個 返回 &n } 函式 TraverseLinkedList(頭 *節點){ temp := 頭 對於 temp != nil { ... 閱讀更多
260 次瀏覽
示例解決此問題的方法步驟 1 - 定義一個接受連結串列頭的方法。步驟 2 - 如果 head == nil,建立一個新節點並返回該節點。步驟 3 - 如果 head 不為空,則更新輸入連結串列的頭。示例 即時演示包 main 匯入“fmt”型別節點結構 { 值 int 下一個 *節點 } 函式 NewNode(值 int,下一個 *節點) *節點{ var n 節點 n.value = 值 n.next = 下一個 返回 &n } 函式 TraverseLinkedList(頭 *節點){ temp := 頭 對於 temp != nil { ... 閱讀更多
2K+ 次瀏覽
示例解決此問題的方法步驟 1 - 定義一個接受連結串列頭的方法。步驟 2 - 如果 head == nil,則返回;否則,遞迴呼叫 ReverseLinkedList。步驟 3 - 最後列印 head.value。示例 即時演示包 main 匯入“fmt”型別節點結構 { 值 int 下一個 *節點 } 函式 NewNode(值 int,下一個 *節點) *節點{ var n 節點 n.value = 值 n.next = 下一個 返回 &n } 函式 TraverseLinkedList(頭 *節點){ fmt.Printf("輸入的連結串列是:") temp := 頭 對於 temp != nil { fmt.Printf("%d ",temp.value) ... 閱讀更多
5K+ 次瀏覽
示例解決此問題的方法步驟 1 - 定義一個接受連結串列頭的方法。步驟 2 - 初始化一個變數,count := 0。步驟 3 - 迭代給定的連結串列,直到到達最後一個節點。步驟 4 - 在迴圈中將 count 增加 1。步驟 5 - 返回 count。示例 即時演示包 main 匯入“fmt”型別節點結構 { 值 int 下一個 *節點 } 函式 NewNode(值 int,下一個 *節點) *節點{ var n 節點 n.value = 值 n.next = 下一個 返回 &n } 函式 CountNodes(頭 *節點){ fmt.Printf("輸入的連結串列是:") ... 閱讀更多
481 次瀏覽
示例解決此問題的方法步驟 1 - 讓我們定義節點的結構。步驟 2 - 使連結串列使得前一個節點儲存下一個節點的地址。示例 即時演示包 main 匯入“fmt”型別節點結構 { 值 int 下一個 *節點 } 函式 NewNode(值 int) *節點{ var n 節點 n.value = 值 n.next = nil 返回 &n } 函式 TraverseLinkedList(頭 *節點){ fmt.Printf("連結串列:") temp := 頭 對於 temp != nil { fmt.Printf("%d ",temp.value) temp = temp.next } } ... 閱讀更多
3K+ 次瀏覽
示例例如,n = 1(1 的二進位制表示形式:1)例如,n = 5(5 的二進位制表示形式:101)例如,n = 20(5 的二進位制表示形式:10100)例如,n = 31(31 的二進位制表示形式:11111)解決此問題的方法步驟 1 - 定義一個接受整數 n 的方法。步驟 2 - 使用 golang 包將 n 轉換為二進位制表示形式步驟 3 - 返回轉換後的二進位制表示形式。示例 即時演示包 main 匯入( "fmt" "strconv" )函式 IntegerToBinary(n int) string { 返回 strconv.FormatInt(int64(n),2) } 函式 main(){ n := 1 fmt.Printf(" %d 的二進位制表示形式為 %s。",... 閱讀更多
609 次瀏覽
示例假設我們有以下二叉樹。先序樹遍歷輸出:1、2、4、5、3、6、7。解決此問題的方法步驟 1 - 如果給定樹的根節點為空,則返回;否則,按照以下步驟操作。步驟 2 - 列印根節點資料。步驟 3 - 遍歷左子樹。步驟 4 - 遍歷右子樹。示例 即時演示包 main 匯入“fmt”型別節點結構 { 資料 int 左 *節點 右 *節點 } 函式(根 *節點)PreOrderTraversal(){ 如果根 !=nil{ fmt.Printf("%d ",根.data) 根.left.PreOrderTraversal() 根.right.PreOrderTraversal() ... 閱讀更多
266 次瀏覽
示例例如,arr = [1, 4, 5, 1, 4, 5, 1] => 陣列中出現次數為奇數次的元素是:1解決此問題的方法步驟 1 - 定義接受陣列的方法。步驟 2 - 宣告一個異或變數,即 xor := 0。步驟 3 - 迭代輸入陣列並對陣列的每個元素執行異或運算。步驟 4 - 最後,返回 xor。示例 即時演示包 main 匯入( "fmt" )函式 FindOddOccurringElement(arr []int) int{ xor := 0 對於 i := 0;i < len(arr);i++ { xor = xor ^ arr[i] } 返回 ... 閱讀更多
174 次瀏覽
示例例如,n = 12 => 12 不是 4 的冪。例如,n = 64 => 64 是 4 的冪。解決此問題的方法步驟 1 - 定義一個接受數字 n 的方法。步驟 2 - 將 log(n) 除以 log(4),儲存在 res 中。步驟 3 - 如果 res 的向下取整與 res 相同,則列印 n 是 4 的冪。步驟 4 - 否則,列印 n 不是 4 的冪。示例 即時演示包 main 匯入( "fmt" "math" )函式 CheckPowerOf4(n int){ res := math.Log(float64(n)) / math.Log(float64(4)) 如果 ... 閱讀更多
148 次瀏覽
示例例如,n = 12 => 2 的冪的前一個數字是 8。例如,n = 20 => 2 的冪的前一個數字是 16。解決此問題的方法步驟 1 - 定義一個接受數字 n 的方法。步驟 2 - 執行 n | (n >> k),其中 k 為 1、2、4、8、16。步驟 3 - 最後,返回 n - (n >> 1)。示例 即時演示包 main 匯入“fmt”函式 PreviousPowOf2(n int) int{ n = n | (n >> 1) n = n | (n >> 2) n = n | (n >> 4) n ... 閱讀更多