-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patharray
69 lines (66 loc) · 1.85 KB
/
array
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
package main
import "fmt"
===========================
1.定义数组
func main() {
a := [2]int{1,2} //var a int 上下2者没有可比性
b := [2]int{1} //var b strong
fmt.Println(a,b)
}
===========================
2.数组指针和数组
func main() {
a := [10]int{}
a[1]=2
fmt.Println(a[1])
p:= new([10]int) //array 数组指针
p[1]=2
fmt.Println(p[1])
fmt.Println(a[1]==p[1])
}
3.多维数组
func main() {
a:=[2][3]int{{1,2,3},{4,5,6}} //2个数组 3个元素
fmt.Println(a)
}
输出结果[[1 2 3] [4 5 6]]
冒泡算法
func main() {
a:=[...]int{1,2,3,4,5,6}
num :=len(a) //6个元素 len获取数组的元素个数
for i :=0; i<num; i++ { //遍历数组每个元素别名I
for j :=i; j<num; j++ { //遍历数组每个元素别名J
if a[i] <a[j] { //i起初为0 j为1 0<1 跑循环
temp :=a[i] //临时a[i] = temp
a[i]=a[j] //a[i]=a[j] 颠倒前后元素,a[i]赋值为a[j]
a[j]=temp //a[j]赋值为a[i] temp,颠倒前后元素
}
}
}
fmt.Println(a)
}
4.GO语言指针
func main() {
var a int= 20 /* 声明实际变量 */
var ip *int /* 声明指针变量 */
ip = &a /* 指针变量的存储地址 */
fmt.Printf("a 变量的地址是: %x\n", &a )
/* 指针变量的存储地址 */
fmt.Printf("ip 变量储存的指针地址: %x\n", ip )
/* 使用指针访问值 */
fmt.Printf("*ip 变量的值: %d\n", *(ip) )
}
5.遍历数组最大值 and 最小
func main() {
numList := []int{2, 4, 6, 7, 8, 10, 3, 6, 0, 1} //数组自定义
maxv := numList[0]
minv := numList[0]
for i := 1; i <len(numList); i++ {
if maxv < numList[i] {
maxv = numList[i]
} else if numList[i] < minv {
minv = numList[i]
}
} //获取数组最大 and最小
fmt.Printf("Max Value %v and Min value %v",maxv,minv)
}