原创 Go併發編程實戰筆記
一、Go語言的主要特徵 1.開放源代碼的通用計算機編程語言。 2.靜態類型、編譯形的語言,語法趨於校本化。 3.卓越的跨平臺支持,無需移植代碼。 4.全自動的垃圾回收機制,無需開發者干預。 5.原生的先進併發模型和機制。 6.擁有函數式編
原创 Golang面試題 數組和切片的區別
題目 寫出下面兩個程序的輸出結果: 1. package main import "fmt" func main() { a := [3]int{1, 2, 3} for k, v := range a { if k ==
原创 golang 面試題(十一)
1. 下面代碼輸出什麼? func calc(index string, a, b int) int { ret := a + b fmt.Println(index, a, b, ret) return ret
原创 golang 面試題(十三)interface內部結構和nil詳解
1.以下代碼打印出來什麼內容,說出爲什麼。 package main import ( "fmt" ) type People interface { Show() } type Student struct{} func
原创 golang 面試題(十二)chan緩存池
1.下面的迭代會有什麼問題? func (set *threadSafeSet) Iter() <-chan interface{} { ch := make(chan interface{}) go func() {
原创 golang 面試題(十一)defer執行順序、make默認值和append
1. 下面代碼輸出什麼? func calc(index string, a, b int) int { ret := a + b fmt.Println(index, a, b, ret) return ret
原创 golang 面試題(八)斐波那契數列和迴文鏈表
1.斐波那契數列 代碼: package fib //求斐波那契數列第n項 func PrintFib(n int)int { if n <= 0 { return 0 } if n >= 3 { return Prin
原创 golang 面試題(九)冒泡排序和二分查找
1.冒泡排序 代碼: package bubblingSort //冒泡排序 func BubblingSort(parameter []int)[]int { for i := 0; i < len(parameter); i++
原创 golang 面試題(十)協程交替打印奇偶數
問題: 兩個協程交替打印1-100的奇偶數,一個協程打印奇數,一個協程打印偶數。 代碼1: package main import ( "fmt" "runtime" "time" ) func main() { //設
原创 golang 面試題(七)小米麪試題,字符串
題目1: 給出一個字符串s(僅含有小寫英文字母和括號)。 請你按照從括號內到外的順序,逐層反轉每對匹配括號中的字符串,並返回最終的結果。 注意,您的結果中 不應 包含任何括號。 示例1: 輸入:s = "(abcd)" 輸出:"dc
原创 golang 面試題(六)select
下面代碼會觸發異常嗎?請詳細說明 func main() { runtime.GOMAXPROCS(1) int_chan := make(chan int, 1) string_chan := make(cha
原创 golang 面試題(五)switch,break和fallthrough
1.glang中的switch,不用添加break java代碼: package test; public class TestRunnable{ public static void main(String[] args)
原创 golang 面試題(四)go的組合繼承
1. 下面代碼會輸出什麼? type People struct{} func (p *People) ShowA() { fmt.Println("showA") p.ShowB() } func (p *Peopl
原创 golang 面試題(二)閉包
下面的代碼會輸出什麼,並說明原因: //代碼1 package main import ( "fmt" "runtime" "time" ) func main() { //設置最大的可同時使用的 CPU 核數 爲1
原创 golang 面試題(三)管道chan
某網站的面試題: 鏈接:http://www.coder55.com/article/34958 首先執行了一下,確實死鎖,如圖: 按題目要求添加代碼: 第一次執行: 第二次: 第三次: 第六次: 因爲線程執行順序並不