自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 [Go练习]跳水比赛8个评委打分问题(存在多个最差评委版)

一,思路:这道题其实很简单,只需要把成绩排好序保存在一个新的切片里,再对其进行操作就行了因为最大值和最小值就存在于排好序的切片里的最左边和最右边并且,在通过舍弃掉最左边和最右边的元素求出最终成绩后,接下来要求的最佳成绩和最差成绩与最终成绩在排好序的切片中的关系同样仅仅是左右关系最后,在求出最差成绩和最佳成绩后,把它们拿去存放原始成绩的数组里进行比对就可以求出它们分别是第几个评委所打的分数了二,代码:package mainimport ( "fmt")/*跳水比赛,8

2022-02-20 12:48:15 1234 3

原创 [Go练习]查找数组内两数之和的下标

一,思路:二,代码:package mainimport "fmt"//一个数组【1,5,6,9,2,7,4,3】,求出数组中两个数相加等于7的下标//编写一个函数,传参为一个切片,一个要查找的数,返回一个存放下标的切片//第一个数与从它往后的所有数相加,第二个数与从它往后的所有数相加,依次到最后一个数//遍历数组,双层循环,第一层遍历数组中的每一个数,第二层遍历每一个数往后的所有数func sum(arrSlice []int, target int) (index [

2022-02-18 20:10:12 277

原创 [Go练习]随机生成10个整数(1-100),使用冒泡排序进行排序,然后用二分查找法查找是否有90这个数,并显示下标,如果没有则提示“找不到该数”

一,思路:1.编写一个冒泡排序的函数,传如一个切片,返回一个切片(排序后)2.编写一个二分查找的函数,传参为一个切片,一个左边下标,一个右边下标,一个要查找的数3.在主函数内创建一个切片,分别调用冒泡函数和二分函数二,代码:package mainimport ( "fmt" "math/rand" "time")/*随机生成10个整数(1-100),使用冒泡排序进行排序,然后用二分查找法查找是否有90这个数,并显示下标,如果没有则提示“找不到该数”。*/fun

2022-02-18 19:55:38 992

原创 [Go练习]试写出实现查找的核心代码,比如已知数组arr[10]string里面保存了10个字符串,现在要查找“AA“是否在数组内,如果存在,打印出其对应的下标,如果存在多个“AA“打印所有对应的下标

一,思路:1.编写一个函数,传参两个,一个string类型的切片,一个要查找的string,返回一个int类型的切片用于存放下标2.函数内遍历传入的切片,如果切片内有要查找的元素,就将该元素的下标append到专门存放下标的切片内,也就是返回的int类型的切片内二,代码:package mainimport "fmt"/*试写出实现查找的核心代码,比如已知数组arr[10]string里面保存了10个字符串,现在要查找"AA"是否在数组内,如果存在,打印出其对应的下标,如果存

2022-02-17 21:15:18 309

原创 [Go练习]定义一个4行4列的二维数组,逐个从键盘输入值,然后将第1行和第4行的数据进行交换,将第2行和第3行的数据进行交换

一,思路:1.先将二维数组挨个赋值并打印出来2.用两个临时的一维数组分别保存二维数组的第一行和第二行,即arr[0]和arr[1],再进行交换3.打印交换后的二维数组二,代码:package mainimport "fmt"/*定义一个4行4列的二维数组,逐个从键盘输入值,然后将第1行和第4行的数据进行交换,将第2行和第3行的数据进行交换*/func main() { var multiArray = [4][4]int{} //给二维数组挨个赋值 for i

2022-02-17 16:52:25 2260

原创 [Go练习题]试保存1 3 5 7 9 五个奇数到数组,并倒序打印

一,思路:1.从终端输入13579,并保存到数组中。2.用临时变量在循环中递减的方式倒序数组的元素3.将倒序后的数组赋值给原数组二,代码:package mainimport "fmt"/*试保存1 3 5 7 9 五个奇数到数组,并倒序打印*/func main() { var arr = [5]int{} for i := 0; i < len(arr); i++ { fmt.Printf("请输入第%d个奇数:", i+1) fmt.Sca

2022-02-17 16:34:04 451

原创 [Go练习题]已知有个排序好的数组(升序),要求插入一个元素,插入后同样是升序排序的,最后打印该数组

一,思路:编写一个函数,传参两个,一个是切片,一个是要插入的数字。返回在原切片插入数字后的切片。在函数内对切片进行冒泡排序。二,代码:package mainimport ( "fmt")/*已知有个排序好的数组(升序),要求插入一个元素,插入后同样是升序排序的,最后打印该数组*/func work(sliceArr []int, num int) []int { sliceArr = append(sliceArr, num) //将要插入的值插入原切片 //冒泡排

2022-02-17 16:02:10 278

原创 【Go练习】将二维数组四周的值清零

一,思路:二,代码:func main() { var multiArr = [3][4]int{} for i := 0; i < len(multiArr); i++ { for k := 0; k < len(multiArr[i]); k++ { fmt.Printf("请输入第%d行第%d个数:\n", i+1, k+1) fmt.Scanln(&multiArr[i][k]) } } fmt.Println() for i :=

2022-02-16 14:52:42 445

原创 go使用切片和双层循环实现冒泡排序

韩老教的先画图再操作真的受益匪浅,不仅方便理解,对寻找规律同样帮助极大(1)冒泡排序的手动实现,寻找规律给定一个无序数组arr01 := […]int{89,65,12,45,33},上一个数和下一个数比较,如果上一个数大于下一个数则交换位置第一轮排序(外层循环):从第一个数开始,依次往后,比较出最大的数第1次比较(内层循环):[*89,*65,12,45,33]>>>[65,89,12,45,33] (*表示要比较的两个数)第2次比较:[65,*89,*12,4..

2022-02-05 17:31:15 271

原创 临时变量在循环中递减的方式实现Go数组反转

第一次听老师讲数组反转(倒序)的时候,又是len(arr)/2,又是len(arr)-1-i的,听得我头晕,没办法,为了不晕只好另辟蹊径,废话不多说,个人感觉我写的代码的注释还是够详细的,所以直接上代码func main(){ //随机生成五个数,存放到数组里 //反转打印数组里的数 rand.Seed(time.Now().UnixNano()) //给随机数做种 var arr3 [5]int //定义一个空数组用于接下来存放随机数 for

2022-02-05 16:27:21 462

原创 Go的错误处理机制,defer + errors.New() + panic 实现自定义错误

(1)defer , errors.New() , panic官方说明defer:defer 语句会将函数推迟到外层函数返回之后执行。推迟调用的函数其参数会立即求值,但直到外层函数返回前该函数都不会被调用。New:New(text string)error使用字符串创建一个错误,返回一个error类型的值(nil或不为nil),请类比fmt包的Errorf方法,差不多可以认为是New(fmt.Sprintf(...))。panic:panic(v interface{..

2022-01-24 14:08:55 395

原创 Go打印空心菱形(使用迭代变量递增的方法打印菱形下半部分)

package mainimport "fmt"/*先打印一个矩形 *** * * 每层*的个数=2x当前层-1 *** >> *** *** 空格=总层数-当前层 *** ***** ***** *** level-1 每层*的个数= level x 3 -(2 x i + level)-1 *** >> ***...

2022-01-10 19:45:50 247

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除